@fncts/test 0.0.21 → 0.0.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (433) hide show
  1. package/_cjs/api.cjs +2 -47
  2. package/_cjs/api.cjs.map +1 -1
  3. package/_cjs/control/AbstractRunnableSpec.cjs +0 -11
  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 +9 -30
  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 +8 -70
  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 +0 -12
  20. package/_cjs/control/AssertionIO/api.cjs.map +1 -1
  21. package/_cjs/control/AssertionIO/definition.cjs +7 -11
  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 +5 -74
  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 +0 -20
  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 +496 -176
  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 +0 -18
  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 +1 -21
  48. package/_cjs/control/RunnableSpec.cjs.map +1 -1
  49. package/_cjs/control/Sample/api.cjs +1 -56
  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 +0 -12
  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 +1 -82
  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 +0 -21
  70. package/_cjs/control/SummaryBuilder.cjs.map +1 -1
  71. package/_cjs/control/Test.cjs +0 -10
  72. package/_cjs/control/Test.cjs.map +1 -1
  73. package/_cjs/control/TestAnnotationRenderer/api.cjs +4 -31
  74. package/_cjs/control/TestAnnotationRenderer/api.cjs.map +1 -1
  75. package/_cjs/control/TestAnnotationRenderer/definition.cjs +2 -18
  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 +3 -44
  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 +10 -29
  84. package/_cjs/control/TestClock/api.cjs.map +1 -1
  85. package/_cjs/control/TestClock/definition.cjs +57 -107
  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 +0 -18
  90. package/_cjs/control/TestConsole/api.cjs.map +1 -1
  91. package/_cjs/control/TestConsole/definition.cjs +24 -45
  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 +0 -12
  96. package/_cjs/control/TestEnvironment.cjs.map +1 -1
  97. package/_cjs/control/TestExecutor.cjs +0 -14
  98. package/_cjs/control/TestExecutor.cjs.map +1 -1
  99. package/_cjs/control/TestLogger.cjs +0 -15
  100. package/_cjs/control/TestLogger.cjs.map +1 -1
  101. package/_cjs/control/TestRandom/api.cjs +0 -30
  102. package/_cjs/control/TestRandom/api.cjs.map +1 -1
  103. package/_cjs/control/TestRandom/definition.cjs +56 -134
  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 +0 -25
  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 +4 -16
  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 +1 -16
  116. package/_cjs/data/AssertionValue/api.cjs.map +1 -1
  117. package/_cjs/data/AssertionValue/definition.cjs +3 -9
  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 +4 -26
  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 +0 -29
  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 +4 -53
  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 +0 -22
  140. package/_cjs/data/LogLine/Fragment.cjs.map +1 -1
  141. package/_cjs/data/LogLine/Line.cjs +0 -32
  142. package/_cjs/data/LogLine/Line.cjs.map +1 -1
  143. package/_cjs/data/LogLine/Message.cjs +0 -34
  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 +2 -16
  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 +1 -16
  166. package/_cjs/data/TestAnnotation/api.cjs.map +1 -1
  167. package/_cjs/data/TestAnnotation/definition.cjs +12 -24
  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 +2 -17
  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 +0 -10
  186. package/_cjs/demo.cjs.map +1 -1
  187. package/_cjs/util/math.cjs +14 -142
  188. package/_cjs/util/math.cjs.map +1 -1
  189. package/_mjs/api.mjs +2 -13
  190. package/_mjs/api.mjs.map +1 -1
  191. package/_mjs/control/AbstractRunnableSpec.mjs +0 -6
  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 +9 -13
  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 +6 -21
  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 +0 -3
  206. package/_mjs/control/AssertionIO/api.mjs.map +1 -1
  207. package/_mjs/control/AssertionIO/definition.mjs +5 -6
  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 +5 -38
  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 +0 -8
  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 +430 -120
  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 +0 -5
  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 +1 -4
  230. package/_mjs/control/RunnableSpec.mjs.map +1 -1
  231. package/_mjs/control/Sample/api.mjs +1 -31
  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 +0 -3
  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 +1 -45
  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 +0 -5
  249. package/_mjs/control/SummaryBuilder.mjs.map +1 -1
  250. package/_mjs/control/Test.mjs +0 -1
  251. package/_mjs/control/Test.mjs.map +1 -1
  252. package/_mjs/control/TestAnnotationRenderer/api.mjs +4 -20
  253. package/_mjs/control/TestAnnotationRenderer/api.mjs.map +1 -1
  254. package/_mjs/control/TestAnnotationRenderer/definition.mjs +2 -8
  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 +3 -7
  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 +10 -13
  261. package/_mjs/control/TestClock/api.mjs.map +1 -1
  262. package/_mjs/control/TestClock/definition.mjs +57 -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 +0 -3
  266. package/_mjs/control/TestConsole/api.mjs.map +1 -1
  267. package/_mjs/control/TestConsole/definition.mjs +24 -31
  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.map +1 -1
  271. package/_mjs/control/TestExecutor.mjs.map +1 -1
  272. package/_mjs/control/TestLogger.mjs +0 -5
  273. package/_mjs/control/TestLogger.mjs.map +1 -1
  274. package/_mjs/control/TestRandom/api.mjs +0 -10
  275. package/_mjs/control/TestRandom/api.mjs.map +1 -1
  276. package/_mjs/control/TestRandom/definition.mjs +56 -113
  277. package/_mjs/control/TestRandom/definition.mjs.map +1 -1
  278. package/_mjs/control/TestRandom.mjs.map +1 -1
  279. package/_mjs/control/TestRenderer/ConsoleRenderer.mjs +0 -10
  280. package/_mjs/control/TestRenderer/ConsoleRenderer.mjs.map +1 -1
  281. package/_mjs/control/TestRunner.mjs +2 -6
  282. package/_mjs/control/TestRunner.mjs.map +1 -1
  283. package/_mjs/data/AssertionData.mjs +3 -6
  284. package/_mjs/data/AssertionData.mjs.map +1 -1
  285. package/_mjs/data/AssertionResult.mjs +0 -2
  286. package/_mjs/data/AssertionResult.mjs.map +1 -1
  287. package/_mjs/data/AssertionValue/api.mjs +1 -6
  288. package/_mjs/data/AssertionValue/api.mjs.map +1 -1
  289. package/_mjs/data/AssertionValue/definition.mjs +3 -3
  290. package/_mjs/data/AssertionValue/definition.mjs.map +1 -1
  291. package/_mjs/data/AssertionValue.mjs.map +1 -1
  292. package/_mjs/data/ExecutedSpec/api.mjs +3 -13
  293. package/_mjs/data/ExecutedSpec/api.mjs.map +1 -1
  294. package/_mjs/data/ExecutedSpec/definition.mjs +5 -13
  295. package/_mjs/data/ExecutedSpec/definition.mjs.map +1 -1
  296. package/_mjs/data/ExecutedSpec.mjs.map +1 -1
  297. package/_mjs/data/ExecutionResult.mjs +0 -16
  298. package/_mjs/data/ExecutionResult.mjs.map +1 -1
  299. package/_mjs/data/FailureDetails.mjs +0 -1
  300. package/_mjs/data/FailureDetails.mjs.map +1 -1
  301. package/_mjs/data/FreeBooleanAlgebra/api.mjs +4 -37
  302. package/_mjs/data/FreeBooleanAlgebra/api.mjs.map +1 -1
  303. package/_mjs/data/FreeBooleanAlgebra/definition.mjs +8 -16
  304. package/_mjs/data/FreeBooleanAlgebra/definition.mjs.map +1 -1
  305. package/_mjs/data/FreeBooleanAlgebra.mjs.map +1 -1
  306. package/_mjs/data/GenFailureDetails.mjs +0 -1
  307. package/_mjs/data/GenFailureDetails.mjs.map +1 -1
  308. package/_mjs/data/LogLine/Fragment.mjs +0 -9
  309. package/_mjs/data/LogLine/Fragment.mjs.map +1 -1
  310. package/_mjs/data/LogLine/Line.mjs +0 -15
  311. package/_mjs/data/LogLine/Line.mjs.map +1 -1
  312. package/_mjs/data/LogLine/Message.mjs +0 -18
  313. package/_mjs/data/LogLine/Message.mjs.map +1 -1
  314. package/_mjs/data/LogLine/Style.mjs +10 -39
  315. package/_mjs/data/LogLine/Style.mjs.map +1 -1
  316. package/_mjs/data/LogLine/api.mjs.map +1 -1
  317. package/_mjs/data/LogLine.mjs.map +1 -1
  318. package/_mjs/data/Render/api.mjs +0 -2
  319. package/_mjs/data/Render/api.mjs.map +1 -1
  320. package/_mjs/data/Render/definition.mjs +2 -8
  321. package/_mjs/data/Render/definition.mjs.map +1 -1
  322. package/_mjs/data/Render.mjs.map +1 -1
  323. package/_mjs/data/RenderParam/api.mjs +3 -10
  324. package/_mjs/data/RenderParam/api.mjs.map +1 -1
  325. package/_mjs/data/RenderParam/definition.mjs +4 -8
  326. package/_mjs/data/RenderParam/definition.mjs.map +1 -1
  327. package/_mjs/data/RenderParam.mjs.map +1 -1
  328. package/_mjs/data/Summary.mjs +0 -1
  329. package/_mjs/data/Summary.mjs.map +1 -1
  330. package/_mjs/data/TestAnnotation/api.mjs +1 -7
  331. package/_mjs/data/TestAnnotation/api.mjs.map +1 -1
  332. package/_mjs/data/TestAnnotation/definition.mjs +10 -12
  333. package/_mjs/data/TestAnnotation/definition.mjs.map +1 -1
  334. package/_mjs/data/TestAnnotation.mjs.map +1 -1
  335. package/_mjs/data/TestAnnotationMap.mjs +2 -8
  336. package/_mjs/data/TestAnnotationMap.mjs.map +1 -1
  337. package/_mjs/data/TestArgs/definition.mjs +0 -1
  338. package/_mjs/data/TestArgs/definition.mjs.map +1 -1
  339. package/_mjs/data/TestArgs.mjs.map +1 -1
  340. package/_mjs/data/TestConfig.mjs +0 -8
  341. package/_mjs/data/TestConfig.mjs.map +1 -1
  342. package/_mjs/data/TestFailure.mjs +4 -12
  343. package/_mjs/data/TestFailure.mjs.map +1 -1
  344. package/_mjs/data/TestSuccess.mjs +4 -10
  345. package/_mjs/data/TestSuccess.mjs.map +1 -1
  346. package/_mjs/data/TestTimeoutException.mjs +0 -1
  347. package/_mjs/data/TestTimeoutException.mjs.map +1 -1
  348. package/_mjs/demo.mjs +0 -3
  349. package/_mjs/demo.mjs.map +1 -1
  350. package/_mjs/util/math.mjs +14 -111
  351. package/_mjs/util/math.mjs.map +1 -1
  352. package/_src/api.ts +2 -2
  353. package/_src/control/AbstractRunnableSpec.ts +0 -3
  354. package/_src/control/Annotations/live.ts +4 -6
  355. package/_src/control/Assertion/api.ts +5 -5
  356. package/_src/control/AssertionIO/definition.ts +2 -4
  357. package/_src/control/DefaultTestReporter/render.ts +1 -1
  358. package/_src/control/Gen/api.ts +429 -40
  359. package/_src/control/Gen.ts +0 -9
  360. package/_src/control/RunnableSpec.ts +1 -1
  361. package/_src/control/Sample/api.ts +1 -1
  362. package/_src/control/Spec/api.ts +1 -1
  363. package/_src/control/TestAspect/api.ts +2 -2
  364. package/_src/control/TestClock/definition.ts +9 -8
  365. package/_src/control/TestConsole/definition.ts +1 -1
  366. package/_src/control/TestRunner.ts +0 -3
  367. package/_src/data/AssertionData.ts +1 -1
  368. package/_src/data/AssertionValue/api.ts +1 -1
  369. package/_src/data/AssertionValue/definition.ts +1 -1
  370. package/_src/data/ExecutedSpec/api.ts +3 -3
  371. package/_src/data/RenderParam/api.ts +1 -1
  372. package/_src/data/TestAnnotation/api.ts +1 -1
  373. package/_src/data/TestAnnotation/definition.ts +7 -4
  374. package/_src/data/TestAnnotationMap.ts +2 -2
  375. package/api.d.ts +2 -2
  376. package/control/AbstractRunnableSpec.d.ts +0 -1
  377. package/control/Annotations/live.d.ts +1 -1
  378. package/control/Assertion/api.d.ts +2 -2
  379. package/control/AssertionIO/definition.d.ts +1 -1
  380. package/control/Gen/api.d.ts +207 -24
  381. package/control/Gen.d.ts +0 -7
  382. package/control/TestClock/definition.d.ts +2 -2
  383. package/control/TestConsole/definition.d.ts +3 -3
  384. package/control/TestRandom/definition.d.ts +1 -1
  385. package/control/TestRunner.d.ts +1 -3
  386. package/data/AssertionData.d.ts +1 -1
  387. package/data/AssertionValue/definition.d.ts +1 -1
  388. package/data/ExecutedSpec/api.d.ts +2 -2
  389. package/data/TestAnnotation/api.d.ts +1 -1
  390. package/data/TestAnnotation/definition.d.ts +8 -4
  391. package/package.json +4 -4
  392. package/_cjs/control/Gen/api/array.cjs +0 -56
  393. package/_cjs/control/Gen/api/array.cjs.map +0 -1
  394. package/_cjs/control/Gen/api/char.cjs +0 -129
  395. package/_cjs/control/Gen/api/char.cjs.map +0 -1
  396. package/_cjs/control/Gen/api/conc.cjs +0 -82
  397. package/_cjs/control/Gen/api/conc.cjs.map +0 -1
  398. package/_cjs/control/Gen/api/double.cjs +0 -82
  399. package/_cjs/control/Gen/api/double.cjs.map +0 -1
  400. package/_cjs/control/Gen/api/float.cjs +0 -55
  401. package/_cjs/control/Gen/api/float.cjs.map +0 -1
  402. package/_cjs/control/Gen/api/string.cjs +0 -106
  403. package/_cjs/control/Gen/api/string.cjs.map +0 -1
  404. package/_cjs/control/Gen/api/struct.cjs +0 -36
  405. package/_cjs/control/Gen/api/struct.cjs.map +0 -1
  406. package/_mjs/control/Gen/api/array.mjs +0 -37
  407. package/_mjs/control/Gen/api/array.mjs.map +0 -1
  408. package/_mjs/control/Gen/api/char.mjs +0 -95
  409. package/_mjs/control/Gen/api/char.mjs.map +0 -1
  410. package/_mjs/control/Gen/api/conc.mjs +0 -57
  411. package/_mjs/control/Gen/api/conc.mjs.map +0 -1
  412. package/_mjs/control/Gen/api/double.mjs +0 -60
  413. package/_mjs/control/Gen/api/double.mjs.map +0 -1
  414. package/_mjs/control/Gen/api/float.mjs +0 -41
  415. package/_mjs/control/Gen/api/float.mjs.map +0 -1
  416. package/_mjs/control/Gen/api/string.mjs +0 -76
  417. package/_mjs/control/Gen/api/string.mjs.map +0 -1
  418. package/_mjs/control/Gen/api/struct.mjs +0 -18
  419. package/_mjs/control/Gen/api/struct.mjs.map +0 -1
  420. package/_src/control/Gen/api/array.ts +0 -34
  421. package/_src/control/Gen/api/char.ts +0 -83
  422. package/_src/control/Gen/api/conc.ts +0 -53
  423. package/_src/control/Gen/api/double.ts +0 -64
  424. package/_src/control/Gen/api/float.ts +0 -36
  425. package/_src/control/Gen/api/string.ts +0 -75
  426. package/_src/control/Gen/api/struct.ts +0 -31
  427. package/control/Gen/api/array.d.ts +0 -18
  428. package/control/Gen/api/char.d.ts +0 -47
  429. package/control/Gen/api/conc.d.ts +0 -25
  430. package/control/Gen/api/double.d.ts +0 -13
  431. package/control/Gen/api/float.d.ts +0 -7
  432. package/control/Gen/api/string.d.ts +0 -48
  433. package/control/Gen/api/struct.d.ts +0 -8
@@ -1,31 +1,25 @@
1
1
  export class Succeeded {
2
2
  constructor(result) {
3
3
  this.result = result;
4
- this._tag = "Succeeded"
5
- /* TestSuccessTag.Succeeded */
6
- ;
4
+ this._tag = "Succeeded" /* TestSuccessTag.Succeeded */;
7
5
  }
8
-
9
6
  }
7
+
10
8
  export class Ignored {
11
9
  constructor() {
12
- this._tag = "Ignored"
13
- /* TestSuccessTag.Ignored */
14
- ;
10
+ this._tag = "Ignored" /* TestSuccessTag.Ignored */;
15
11
  }
16
-
17
12
  }
13
+
18
14
  export const TestSuccess = {};
19
15
  /**
20
16
  * @tsplus static fncts.test.TestSuccessOps Succeeded
21
17
  */
22
-
23
18
  export function succeeded(result) {
24
19
  return new Succeeded(result);
25
20
  }
26
21
  /**
27
22
  * @tsplus static fncts.test.TestSuccessOps Ignored
28
23
  */
29
-
30
24
  export const ignored = /*#__PURE__*/new Ignored();
31
25
  //# sourceMappingURL=TestSuccess.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"TestSuccess.mjs","mappings":"AAOA,OAAM,MAAOA,SAAP,CAAgB;EAEpBC,YAAqBC,MAArB,EAAqD;IAAhC;IADZ,YAAI;IAAA;IAAJ;EACgD;;AAFrC;AAKtB,OAAM,MAAOC,OAAP,CAAc;EAApBF;IACW,YAAI;IAAA;IAAJ;EACV;;AAFmB;AAcpB,OAAO,MAAMG,WAAW,GAAmB,EAApC;AAEP;;;;AAGA,OAAM,SAAUC,SAAV,CAAoBH,MAApB,EAAoD;EACxD,OAAO,IAAIF,SAAJ,CAAcE,MAAd,CAAP;AACD;AAED;;;;AAGA,OAAO,MAAMI,OAAO,gBAAG,IAAIH,OAAJ,EAAhB","names":["Succeeded","constructor","result","Ignored","TestSuccess","succeeded","ignored"],"sourceRoot":"","sources":["../../_src/data/TestSuccess.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"TestSuccess.mjs","mappings":"AAOA,OAAM,MAAOA,SAAS;EAEpBC,YAAqBC,MAAgC;IAAhC,WAAM,GAANA,MAAM;IADlB,SAAI;EAC2C;;;AAG1D,OAAM,MAAOC,OAAO;EAApBF;IACW,SAAI;EACf;;;AAYA,OAAO,MAAMG,WAAW,GAAmB,EAAE;AAE7C;;;AAGA,OAAM,SAAUC,SAAS,CAACH,MAAgC;EACxD,OAAO,IAAIF,SAAS,CAACE,MAAM,CAAC;AAC9B;AAEA;;;AAGA,OAAO,MAAMI,OAAO,gBAAG,IAAIH,OAAO,EAAE","names":["Succeeded","constructor","result","Ignored","TestSuccess","succeeded","ignored"],"sourceRoot":"","sources":["../../_src/data/TestSuccess.ts"],"sourcesContent":[null]}
@@ -2,6 +2,5 @@ export class TestTimeoutException extends Error {
2
2
  constructor(message) {
3
3
  super(message);
4
4
  }
5
-
6
5
  }
7
6
  //# sourceMappingURL=TestTimeoutException.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"TestTimeoutException.mjs","mappings":"AAAA,OAAM,MAAOA,oBAAP,SAAoCC,KAApC,CAAyC;EAC7CC,YAAYC,OAAZ,EAA2B;IACzB,MAAMA,OAAN;EACD;;AAH4C","names":["TestTimeoutException","Error","constructor","message"],"sourceRoot":"","sources":["../../_src/data/TestTimeoutException.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"TestTimeoutException.mjs","mappings":"AAAA,OAAM,MAAOA,oBAAqB,SAAQC,KAAK;EAC7CC,YAAYC,OAAe;IACzB,KAAK,CAACA,OAAO,CAAC;EAChB","names":["TestTimeoutException","Error","constructor","message"],"sourceRoot":"","sources":["../../_src/data/TestTimeoutException.ts"],"sourcesContent":[null]}
package/_mjs/demo.mjs CHANGED
@@ -4,7 +4,6 @@ import { DefaultRunnableSpec } from "@fncts/test/control/DefaultRunnableSpec";
4
4
  import { suite, test } from "./api.mjs";
5
5
  import { strictEqualTo } from "./control/Assertion.mjs";
6
6
  const ServiceATag = /*#__PURE__*/tsplus_module_1.makeTag("fncts.test.demo.ServiceA");
7
-
8
7
  class DemoSpec extends DefaultRunnableSpec {
9
8
  constructor() {
10
9
  super(...arguments);
@@ -26,8 +25,6 @@ class DemoSpec extends DefaultRunnableSpec {
26
25
  }
27
26
  })));
28
27
  }
29
-
30
28
  }
31
-
32
29
  new DemoSpec().main();
33
30
  //# sourceMappingURL=demo.mjs.map
package/_mjs/demo.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"demo.mjs","mappings":";;AAAA,SAASA,mBAAT,QAAoC,yCAApC;AAEA,SAASC,KAAT,EAAgBC,IAAhB,QAAoC,WAApC;AACA,SAASC,aAAT,QAA8B,yBAA9B;AACA,MAAMC,WAAW,gBAAGC,wBAEjB,0BAFiB,CAApB;;AAGA,MAAMC,QAAN,SAAuBN,mBAAvB,CAA0C;EAA1CO;;IACE,YAAON,KAAK,CACV,WADU,EAEVC,IAAI,CAAC,cAAD,EAAe,MAAEM,uBAAWL,aAAa,CAAC,CAAD,CAAxB,EAAC,CAAD,CAAjB,CAFM,EAGVD,IAAI,CAAC,cAAD,EAAe,MAAEM,uBAAuCL,aAAa,CAAC;MAAEM,CAAC,EAAE;QAAEC,CAAC,EAAE;UAAEC,CAAC,EAAE;YAAEC,CAAC,EAAE;UAAL;QAAL;MAAL;IAAL,CAAD,CAApD;MAAEH,CAAC,EAAE;QAAEC,CAAC,EAAE;UAAEC,CAAC,EAAE;YAAEC,CAAC,EAAE;UAAL;QAAL;MAAL;IAAL,EAAjB,CAHM,CAAZ;EAKD;;AANyC;;AAO1C,IAAIN,QAAJ,GAAeO,IAAf","names":["DefaultRunnableSpec","suite","test","strictEqualTo","ServiceATag","tsplus_module_1","DemoSpec","constructor","tsplus_module_2","a","b","c","d","main"],"sourceRoot":"","sources":["../_src/demo.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"demo.mjs","mappings":";;AAAA,SAASA,mBAAmB,QAAQ,yCAAyC;AAE7E,SAASC,KAAK,EAAEC,IAAI,QAAgB,WAAU;AAC9C,SAASC,aAAa,QAAQ,yBAAwB;AACtD,MAAMC,WAAW,gBAAGC,wBAEjB,0BAA0B,CAAC;AAC9B,MAAMC,QAAS,SAAQN,mBAAmB;EAA1CO;;IACE,SAAI,GAAGN,KAAK,CACV,WAAW,EACXC,IAAI,CAAC,cAAc,QAAEM,uBAAWL,aAAa,CAAC,CAAC,CAAC,EAA1B,CAAC,CAA0B,CAAC,EAClDD,IAAI,CAAC,cAAc,QAAEM,uBAAuCL,aAAa,CAAC;MAAEM,CAAC,EAAE;QAAEC,CAAC,EAAE;UAAEC,CAAC,EAAE;YAAEC,CAAC,EAAE;UAAC;QAAE;MAAE;IAAE,CAAE,CAAC,EAAnF;MAAEH,CAAC,EAAE;QAAEC,CAAC,EAAE;UAAEC,CAAC,EAAE;YAAEC,CAAC,EAAE;UAAG;QAAE;MAAE;IAAE,CAAE,CAAqD,CAAC,CAC3G;EACH;;AACA,IAAIN,QAAQ,EAAE,CAACO,IAAI,EAAE","names":["DefaultRunnableSpec","suite","test","strictEqualTo","ServiceATag","tsplus_module_1","DemoSpec","constructor","tsplus_module_2","a","b","c","d","main"],"sourceRoot":"","sources":["../_src/demo.ts"],"sourcesContent":[null]}
@@ -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
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
22
  return tsplus_module_1.haltNow(new Error(errorMessage), fileName_1 + ":20:22");
33
23
  }
34
-
35
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);
@@ -587,13 +493,10 @@ export function computeArrayInt64GenerateRange(min, max, biasFactor, biasedRange
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
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
502
  }, fileName_1 + ":496:16");