@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
@@ -8,29 +8,24 @@ import * as tsplus_module_5 from "@fncts/io/IO/api/environment";
8
8
  * @tsplus type fncts.test.TestLogger
9
9
  * @tsplus companion fncts.test.TestLoggerOps
10
10
  */
11
-
12
11
  export class TestLogger {}
13
12
  /**
14
13
  * @tsplus static fncts.test.TestLoggerOps Tag
15
14
  */
16
-
17
15
  const TestLoggerTag_1 = /*#__PURE__*/tsplus_module_1.makeTag("fncts.test.TestLogger");
18
16
  export const TestLoggerTag = TestLoggerTag_1;
19
17
  /**
20
18
  * @tsplus static fncts.test.TestLoggerOps fromConsole
21
19
  */
22
-
23
20
  export const fromConsole = /*#__PURE__*/tsplus_module_4.fromIO( /*#__PURE__*/tsplus_module_3.consoleWith(console => tsplus_module_2.succeedNow(new class extends TestLogger {
24
21
  logLine(line) {
25
22
  return console.print(line);
26
23
  }
27
-
28
- }(), fileName_1 + ":21:18"), fileName_1 + ":20:17"), TestLoggerTag_1, fileName_1 + ":19:73");
24
+ }(), fileName_1 + ":19:18"), fileName_1 + ":18:17"), TestLoggerTag_1, fileName_1 + ":17:73");
29
25
  /**
30
26
  * @tsplus static fncts.test.TestLoggerOps logLine
31
27
  */
32
-
33
28
  export function logLine(line) {
34
- return tsplus_module_5.serviceWithIO(testLogger => testLogger.logLine(line), TestLoggerTag_1, fileName_1 + ":36:26");
29
+ return tsplus_module_5.serviceWithIO(testLogger => testLogger.logLine(line), TestLoggerTag_1, fileName_1 + ":34:26");
35
30
  }
36
31
  //# sourceMappingURL=TestLogger.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"TestLogger.mjs","mappings":";;;;;;AAEA;;;;;AAIA,OAAM,MAAgBA,UAAhB,CAA0B;AAIhC;;;;AAGO,MAAMC,+BAAgBC,wBAAgB,uBAAhB,CAAtB;aAAMC,aAAa;AAE1B;;;;AAGA,OAAO,MAAMC,WAAW,gBAAoCC,qCAC1DC,4BAAgBC,OAAD,IACbC,2BACE,IAAK,cAAcR,UAAd,CAAwB;EAC3BS,OAAO,CAACC,IAAD,EAAa;IAClB,OAAOH,OAAO,CAACI,KAAR,CAAcD,IAAd,CAAP;EACD;;AAH0B,CAA7B,EADF,EAKME,qBALN,CADF,EAOGA,qBAPH,CAD0D,EASzDX,eATyD,EASzDW,qBATyD,CAArD;AAaP;;;;AAGA,OAAM,SAAUH,OAAV,CAAkBC,IAAlB,EAA8B;EAClC,OAAOG,8BAAkBC,UAAD,IAAgBA,UAAU,CAACL,OAAX,CAAmBC,IAAnB,CAAjC,EAAyDT,eAAzD,EAAyDW,qBAAzD,CAAP;AACD","names":["TestLogger","TestLoggerTag_1","tsplus_module_1","TestLoggerTag","fromConsole","tsplus_module_4","tsplus_module_3","console","tsplus_module_2","logLine","line","print","fileName_1","tsplus_module_5","testLogger"],"sourceRoot":"","sources":["../../_src/control/TestLogger.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"TestLogger.mjs","mappings":";;;;;;AAAA;;;;AAIA,OAAM,MAAgBA,UAAU;AAIhC;;;AAGO,MAAMC,+BAAgBC,wBAAgB,uBAAuB,CAAC;aAAxDC,aAAa;AAE1B;;;AAGA,OAAO,MAAMC,WAAW,gBAAoCC,qCAC1DC,4BAAgBC,OAAO,IACrBC,2BACE,IAAK,cAAcR,UAAU;EAC3BS,OAAO,CAACC,IAAY;IAClB,OAAOH,OAAO,CAACI,KAAK,CAACD,IAAI,CAAC;EAC5B;CACD,EAAG,wBACL,wBACF,yCAEF;AAED;;;AAGA,OAAM,SAAUD,OAAO,CAACC,IAAY;EAClC,OAAOE,8BAAkBC,UAAU,IAAKA,UAAU,CAACJ,OAAO,CAACC,IAAI,CAAC,yCAAiB;AACnF","names":["TestLogger","TestLoggerTag_1","tsplus_module_1","TestLoggerTag","fromConsole","tsplus_module_4","tsplus_module_3","console","tsplus_module_2","logLine","line","print","tsplus_module_5","testLogger"],"sourceRoot":"","sources":["../../_src/control/TestLogger.ts"],"sourcesContent":[null]}
@@ -14,66 +14,56 @@ import { Buffer, Data, TestRandom } from "@fncts/test/control/TestRandom";
14
14
  /**
15
15
  * @tsplus static fncts.test.TestRandom feedInts
16
16
  */
17
-
18
17
  export function feedInts(...ints) {
19
18
  return tsplus_module_2.serviceWithIO(tr => tr.feedInts(...ints), tsplus_module_1.TestRandomTag, fileName_1 + ":8:26");
20
19
  }
21
20
  /**
22
21
  * @tsplus static fncts.test.TestRandom feedBytes
23
22
  */
24
-
25
23
  export function feedBytes(...bytes) {
26
- return tsplus_module_2.serviceWithIO(tr => tr.feedBytes(...bytes), tsplus_module_1.TestRandomTag, fileName_1 + ":14:26");
24
+ return tsplus_module_2.serviceWithIO(tr => tr.feedBytes(...bytes), tsplus_module_1.TestRandomTag, fileName_1 + ":15:26");
27
25
  }
28
26
  /**
29
27
  * @tsplus static fncts.test.TestRandom feedChars
30
28
  */
31
-
32
29
  export function feedChars(...chars) {
33
- return tsplus_module_2.serviceWithIO(tr => tr.feedChars(...chars), tsplus_module_1.TestRandomTag, fileName_1 + ":20:26");
30
+ return tsplus_module_2.serviceWithIO(tr => tr.feedChars(...chars), tsplus_module_1.TestRandomTag, fileName_1 + ":22:26");
34
31
  }
35
32
  /**
36
33
  * @tsplus static fncts.test.TestRandom feedDoubles
37
34
  */
38
-
39
35
  export function feedDoubles(...doubles) {
40
- return tsplus_module_2.serviceWithIO(tr => tr.feedDoubles(...doubles), tsplus_module_1.TestRandomTag, fileName_1 + ":26:26");
36
+ return tsplus_module_2.serviceWithIO(tr => tr.feedDoubles(...doubles), tsplus_module_1.TestRandomTag, fileName_1 + ":29:26");
41
37
  }
42
38
  /**
43
39
  * @tsplus static fncts.test.TestRandom feedStrings
44
40
  */
45
-
46
41
  export function feedStrings(...strings) {
47
- return tsplus_module_2.serviceWithIO(tr => tr.feedStrings(...strings), tsplus_module_1.TestRandomTag, fileName_1 + ":32:26");
42
+ return tsplus_module_2.serviceWithIO(tr => tr.feedStrings(...strings), tsplus_module_1.TestRandomTag, fileName_1 + ":36:26");
48
43
  }
49
44
  /**
50
45
  * @tsplus static fncts.test.TestRandom feedBooleans
51
46
  */
52
-
53
47
  export function feedBooleans(...booleans) {
54
- return tsplus_module_2.serviceWithIO(tr => tr.feedBooleans(...booleans), tsplus_module_1.TestRandomTag, fileName_1 + ":38:26");
48
+ return tsplus_module_2.serviceWithIO(tr => tr.feedBooleans(...booleans), tsplus_module_1.TestRandomTag, fileName_1 + ":43:26");
55
49
  }
56
50
  /**
57
51
  * @tsplus static fncts.test.TestRandomOps make
58
52
  */
59
-
60
53
  function make_1(initialData) {
61
- return tsplus_module_7.fromIOEnvironment(tsplus_module_6.flatMap_(tsplus_module_5.make(() => initialData, fileName_1 + ":47:32"), data => tsplus_module_6.map_(tsplus_module_5.make(() => new Buffer(), fileName_1 + ":48:32"), buffer => {
54
+ return tsplus_module_7.fromIOEnvironment(tsplus_module_6.flatMap(data => tsplus_module_6.map(buffer => {
62
55
  const test = new TestRandom(data, buffer);
63
- return tsplus_module_4.add(tsplus_module_4.add(tsplus_module_4.make(), test, tsplus_module_1.TestRandomTag), test, tsplus_module_3.RandomTag);
64
- }, fileName_1 + ":48:23"), fileName_1 + ":47:23"), fileName_1 + ":45:33");
56
+ return tsplus_module_4.add(test, tsplus_module_3.RandomTag)(tsplus_module_4.add(test, tsplus_module_1.TestRandomTag)(tsplus_module_4.make()));
57
+ }, fileName_1 + ":53:23")(tsplus_module_5.make(() => new Buffer(), fileName_1 + ":53:32")), fileName_1 + ":52:23")(tsplus_module_5.make(() => initialData, fileName_1 + ":52:32")), fileName_1 + ":50:33");
65
58
  }
66
-
67
59
  const defaultData = /*#__PURE__*/new Data(1071905196, 1911589680);
68
60
  /**
69
61
  * @tsplus static fncts.test.TestRandomOps Deterministic
70
62
  */
71
-
72
63
  const determinictic_1 = /*#__PURE__*/make_1(defaultData);
73
64
  export const determinictic = determinictic_1;
74
65
  /**
75
66
  * @tsplus static fncts.test.TestRandomOps Random
76
67
  */
77
-
78
- export const random = /*#__PURE__*/tsplus_module_7.to_(determinictic_1, /*#__PURE__*/tsplus_module_7.scoped(() => tsplus_module_6.flatMap_(tsplus_module_2.service(tsplus_module_1.TestRandomTag, fileName_1 + ":68:38"), testRandom => tsplus_module_6.flatMap_(tsplus_module_10.currentTime, time => tsplus_module_6.flatMap_(testRandom.setSeed(time), () => tsplus_module_6.map_(tsplus_module_9.locallyScopedWith(tsplus_module_8.services, _ => tsplus_module_4.add(_, testRandom, tsplus_module_3.RandomTag), fileName_1 + ":71:41"), () => testRandom, fileName_1 + ":71:8"), fileName_1 + ":70:8"), fileName_1 + ":69:27"), fileName_1 + ":68:27"), tsplus_module_1.TestRandomTag, fileName_1 + ":66:15"));
68
+ export const random = /*#__PURE__*/tsplus_module_7.to(tsplus_module_7.scoped(() => tsplus_module_6.flatMap(testRandom => tsplus_module_6.flatMap(time => tsplus_module_6.flatMap(() => tsplus_module_6.map(() => testRandom, fileName_1 + ":76:8")(tsplus_module_9.locallyScopedWith(_ => tsplus_module_4.add(testRandom, tsplus_module_3.RandomTag)(_), fileName_1 + ":76:41")(tsplus_module_8.services)), fileName_1 + ":75:8")(testRandom.setSeed(time)), fileName_1 + ":74:27")(tsplus_module_10.currentTime), fileName_1 + ":73:27")(tsplus_module_2.service(tsplus_module_1.TestRandomTag, fileName_1 + ":73:38")), tsplus_module_1.TestRandomTag, fileName_1 + ":71:15"))(determinictic_1);
79
69
  //# sourceMappingURL=api.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.mjs","mappings":";;;;;;;;;;;aA2CgBA,IAAI;AA1CpB,SAASC,MAAT,EAAiBC,IAAjB,EAAuBC,UAAvB,QAAyC,gCAAzC;AAEA;;;;AAGA,OAAM,SAAUC,QAAV,CAAmB,GAAGC,IAAtB,EAAiD;EACrD,OAAOC,8BAAkBC,EAAD,IAAQA,EAAE,CAACH,QAAH,CAAY,GAAGC,IAAf,CAAzB,EAA6CG,6BAA7C,EAA6CC,oBAA7C,CAAP;AACD;AACD;;;;AAGA,OAAM,SAAUC,SAAV,CAAoB,GAAGC,KAAvB,EAAgE;EACpE,OAAOL,8BAAkBC,EAAD,IAAQA,EAAE,CAACG,SAAH,CAAa,GAAGC,KAAhB,CAAzB,EAA+CH,6BAA/C,EAA+CC,qBAA/C,CAAP;AACD;AACD;;;;AAGA,OAAM,SAAUG,SAAV,CAAoB,GAAGC,KAAvB,EAAmD;EACvD,OAAOP,8BAAkBC,EAAD,IAAQA,EAAE,CAACK,SAAH,CAAa,GAAGC,KAAhB,CAAzB,EAA+CL,6BAA/C,EAA+CC,qBAA/C,CAAP;AACD;AACD;;;;AAGA,OAAM,SAAUK,WAAV,CAAsB,GAAGC,OAAzB,EAAuD;EAC3D,OAAOT,8BAAkBC,EAAD,IAAQA,EAAE,CAACO,WAAH,CAAe,GAAGC,OAAlB,CAAzB,EAAmDP,6BAAnD,EAAmDC,qBAAnD,CAAP;AACD;AACD;;;;AAGA,OAAM,SAAUO,WAAV,CAAsB,GAAGC,OAAzB,EAAuD;EAC3D,OAAOX,8BAAkBC,EAAD,IAAQA,EAAE,CAACS,WAAH,CAAe,GAAGC,OAAlB,CAAzB,EAAmDT,6BAAnD,EAAmDC,qBAAnD,CAAP;AACD;AACD;;;;AAGA,OAAM,SAAUS,YAAV,CAAuB,GAAGC,QAA1B,EAA0D;EAC9D,OAAOb,8BAAkBC,EAAD,IAAQA,EAAE,CAACW,YAAH,CAAgB,GAAGC,QAAnB,CAAzB,EAAqDX,6BAArD,EAAqDC,qBAArD,CAAP;AACD;AAED;;;;AAGA,gBAAqBW,WAArB,EAAsC;EACpC,OAAOC,2DAEcC,2BAASF,WAAT,EAAoBX,qBAApB,CAFd,EAEGc,IAAI,yBACOD,2BAAS,IAAIrB,MAAJ,EAAT,EAAqBQ,qBAArB,CADP,EACJe,MAAM;IACZ,MAAMC,IAAI,GAAK,IAAItB,UAAJ,CAAeoB,IAAf,EAAqBC,MAArB,CAAf;IACA,OAAOE,gEAAkBD,IAAlB,EAAsBjB,6BAAtB,GAA4CiB,IAA5C,EAAgDE,yBAAhD,CAAP;GAHU,wBAFP,gDAAP;AAQD;;AAED,MAAMC,WAAW,gBAAG,IAAI1B,IAAJ,CAAS,UAAT,EAAqB,UAArB,CAApB;AAEA;;;;AAGO,MAAM2B,+BAAgBC,OAAgBF,WAAhB,CAAtB;aAAMG,aAAa;AAE1B;;;;AAGA,OAAO,MAAMC,MAAM,gBAAsCX,kDACvDA,sDAEyBf,6EAFzB,EAEU2B,UAAU,2DACVC,IAAI,6BACRD,UAAU,CAACE,OAAX,CAAmBD,IAAnB,CADQ,EACgB,2BACxBE,4DAAkCC,CAAD,IAAOX,uBAAMO,UAAN,EAAgBN,yBAAhB,CAAxC,EAAqElB,qBAArE,CADwB,EAC8C,MACjEwB,UAFmB,EAETxB,oBAFS,CADhB,EAGOA,oBAHP,CADM,EAICA,qBAJD,CAFpB,EAMqBA,qBANrB,GAMqBD,6BANrB,EAMqBC,qBANrB,CADuD,CAAlD","names":["make","Buffer","Data","TestRandom","feedInts","ints","tsplus_module_2","tr","tsplus_module_1","fileName_1","feedBytes","bytes","feedChars","chars","feedDoubles","doubles","feedStrings","strings","feedBooleans","booleans","initialData","tsplus_module_7","tsplus_module_5","data","buffer","test","tsplus_module_4","tsplus_module_3","defaultData","determinictic_1","make_1","determinictic","random","testRandom","time","setSeed","tsplus_module_9","_"],"sourceRoot":"","sources":["../../../_src/control/TestRandom/api.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"api.mjs","mappings":";;;;;;;;;;;aAgDgBA,IAAI;AA/CpB,SAASC,MAAM,EAAEC,IAAI,EAAEC,UAAU,QAAQ,gCAAgC;AAEzE;;;AAGA,OAAM,SAAUC,QAAQ,CAAC,GAAGC,IAA2B;EACrD,OAAOC,8BAAkBC,EAAE,IAAKA,EAAE,CAACH,QAAQ,CAAC,GAAGC,IAAI,CAAC,sDAAiB;AACvE;AAEA;;;AAGA,OAAM,SAAUG,SAAS,CAAC,GAAGC,KAAyC;EACpE,OAAOH,8BAAkBC,EAAE,IAAKA,EAAE,CAACC,SAAS,CAAC,GAAGC,KAAK,CAAC,uDAAiB;AACzE;AAEA;;;AAGA,OAAM,SAAUC,SAAS,CAAC,GAAGC,KAA4B;EACvD,OAAOL,8BAAkBC,EAAE,IAAKA,EAAE,CAACG,SAAS,CAAC,GAAGC,KAAK,CAAC,uDAAiB;AACzE;AAEA;;;AAGA,OAAM,SAAUC,WAAW,CAAC,GAAGC,OAA8B;EAC3D,OAAOP,8BAAkBC,EAAE,IAAKA,EAAE,CAACK,WAAW,CAAC,GAAGC,OAAO,CAAC,uDAAiB;AAC7E;AAEA;;;AAGA,OAAM,SAAUC,WAAW,CAAC,GAAGC,OAA8B;EAC3D,OAAOT,8BAAkBC,EAAE,IAAKA,EAAE,CAACO,WAAW,CAAC,GAAGC,OAAO,CAAC,uDAAiB;AAC7E;AAEA;;;AAGA,OAAM,SAAUC,YAAY,CAAC,GAAGC,QAAgC;EAC9D,OAAOX,8BAAkBC,EAAE,IAAKA,EAAE,CAACS,YAAY,CAAC,GAAGC,QAAQ,CAAC,uDAAiB;AAC/E;AAEA;;;AAGA,gBAAqBC,WAAiB;EACpC,OAAOC,0DAEGC,IAAI,wBACJC,MAAM;IACZ,MAAMC,IAAI,GAAK,IAAInB,UAAU,CAACiB,IAAI,EAAEC,MAAM,CAAC;IAC3C,OAAOE,oBAA4CD,IAAI,6BAAhDC,oBAAkBD,IAAI,iCAAtBC,sBAAa,CAA0B,CAAsB;4BAFnDC,2BAAS,IAAIvB,MAAM,EAAE,wBAAC,0BADtBuB,2BAASN,WAAW,wBAAC,yBAKzC;AACH;AAEA,MAAMO,WAAW,gBAAG,IAAIvB,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC;AAEpD;;;AAGO,MAAMwB,+BAAgBC,OAAgBF,WAAW,CAAC;aAA5CG,aAAa;AAE1B;;;AAGA,OAAO,MAAMC,MAAM,gBAAsCV,mBACvDA,qDAEUW,UAAU,4BACVC,IAAI,4DAGHD,UAAU,wBADfE,kCAAkCC,CAAC,IAAKV,oBAAMO,UAAU,6BAAhBG,CAAC,CAA4B,kDAAC,yBADtEH,UAAU,CAACI,OAAO,CAACH,IAAI,CAAC,gFAFLzB,6EAA0B,wDAOlD,kBACF","names":["make","Buffer","Data","TestRandom","feedInts","ints","tsplus_module_2","tr","feedBytes","bytes","feedChars","chars","feedDoubles","doubles","feedStrings","strings","feedBooleans","booleans","initialData","tsplus_module_7","data","buffer","test","tsplus_module_4","tsplus_module_5","defaultData","determinictic_1","make_1","determinictic","random","testRandom","time","tsplus_module_9","_","setSeed"],"sourceRoot":"","sources":["../../../_src/control/TestRandom/api.ts"],"sourcesContent":[null]}
@@ -13,69 +13,60 @@ import { IllegalArgumentError } from "@fncts/base/data/exceptions";
13
13
  /**
14
14
  * @tsplus static fncts.test.TestRandomOps Tag
15
15
  */
16
-
17
16
  export const TestRandomTag = /*#__PURE__*/tsplus_module_1.makeTag("fncts.test.TestRandom");
18
17
  /**
19
18
  * @tsplus type fncts.test.TestRandom
20
19
  * @tsplus companion fncts.test.TestRandomOps
21
20
  */
22
-
23
21
  export class TestRandom {
24
22
  constructor(randomState, bufferState) {
25
23
  this.randomState = randomState;
26
24
  this.bufferState = bufferState;
27
- this.clearBooleans = tsplus_module_3.update_(this.bufferState, buff => buff.copy({
25
+ this.clearBooleans = tsplus_module_3.update(buff => buff.copy({
28
26
  booleans: tsplus_module_2.empty()
29
- }), fileName_1 + ":17:53");
30
- this.clearBytes = tsplus_module_3.update_(this.bufferState, buff => buff.copy({
27
+ }), fileName_1 + ":16:53")(this.bufferState);
28
+ this.clearBytes = tsplus_module_3.update(buff => buff.copy({
31
29
  bytes: tsplus_module_2.empty()
32
- }), fileName_1 + ":18:53");
33
- this.clearChars = tsplus_module_3.update_(this.bufferState, buff => buff.copy({
30
+ }), fileName_1 + ":17:53")(this.bufferState);
31
+ this.clearChars = tsplus_module_3.update(buff => buff.copy({
34
32
  chars: tsplus_module_2.empty()
35
- }), fileName_1 + ":19:53");
36
- this.clearDoubles = tsplus_module_3.update_(this.bufferState, buff => buff.copy({
33
+ }), fileName_1 + ":18:53")(this.bufferState);
34
+ this.clearDoubles = tsplus_module_3.update(buff => buff.copy({
37
35
  doubles: tsplus_module_2.empty()
38
- }), fileName_1 + ":20:53");
39
- this.clearInts = tsplus_module_3.update_(this.bufferState, buff => buff.copy({
36
+ }), fileName_1 + ":19:53")(this.bufferState);
37
+ this.clearInts = tsplus_module_3.update(buff => buff.copy({
40
38
  integers: tsplus_module_2.empty()
41
- }), fileName_1 + ":21:53");
42
- this.clearStrings = tsplus_module_3.update_(this.bufferState, buff => buff.copy({
39
+ }), fileName_1 + ":20:53")(this.bufferState);
40
+ this.clearStrings = tsplus_module_3.update(buff => buff.copy({
43
41
  strings: tsplus_module_2.empty()
44
- }), fileName_1 + ":22:53");
45
- this.getSeed = tsplus_module_5.map_(tsplus_module_4.get(this.randomState, fileName_1 + ":41:42"), data => (data.seed1 << 24 | data.seed2) ^ 0x5deece66d, fileName_1 + ":41:50");
46
-
42
+ }), fileName_1 + ":21:53")(this.bufferState);
43
+ this.getSeed = tsplus_module_5.map(data => (data.seed1 << 24 | data.seed2) ^ 0x5deece66d, fileName_1 + ":40:50")(tsplus_module_4.get(this.randomState, fileName_1 + ":40:42"));
47
44
  this.bufferedBoolean = buffer => {
48
45
  return [tsplus_module_2.head(buffer.booleans), buffer.copy({
49
- booleans: tsplus_module_2.drop_(buffer.booleans, 1)
46
+ booleans: tsplus_module_2.drop(1)(buffer.booleans)
50
47
  })];
51
48
  };
52
-
53
49
  this.bufferedDouble = buffer => {
54
50
  return [tsplus_module_2.head(buffer.doubles), buffer.copy({
55
- doubles: tsplus_module_2.drop_(buffer.doubles, 1)
51
+ doubles: tsplus_module_2.drop(1)(buffer.doubles)
56
52
  })];
57
53
  };
58
-
59
54
  this.bufferedInt = buffer => {
60
55
  return [tsplus_module_2.head(buffer.integers), buffer.copy({
61
- integers: tsplus_module_2.drop_(buffer.integers, 1)
56
+ integers: tsplus_module_2.drop(1)(buffer.integers)
62
57
  })];
63
58
  };
64
-
65
59
  this.getOrElse = (buffer, random) => {
66
- return tsplus_module_5.flatMap_(tsplus_module_3.modify_(this.bufferState, buffer, fileName_1 + ":62:35"), _ => tsplus_module_8.match_(_, () => random, tsplus_module_5.succeedNow), fileName_1 + ":62:51");
60
+ return tsplus_module_5.flatMap(_ => tsplus_module_8.match(() => random, tsplus_module_5.succeedNow)(_), fileName_1 + ":58:51")(tsplus_module_3.modify(buffer, fileName_1 + ":58:35")(this.bufferState));
67
61
  };
68
-
69
62
  this.leastSignificantBits = x => {
70
63
  return Math.floor(x) & (1 << 24) - 1;
71
64
  };
72
-
73
65
  this.mostSignificantBits = x => {
74
66
  return Math.floor(x / (1 << 24));
75
67
  };
76
-
77
68
  this.randomBits = bits => {
78
- return tsplus_module_3.modify_(this.randomState, data => {
69
+ return tsplus_module_3.modify(data => {
79
70
  const multiplier = 0x5deece66d;
80
71
  const multiplier1 = Math.floor(multiplier >>> 24);
81
72
  const multiplier2 = Math.floor(multiplier) & (1 << 24) - 1;
@@ -85,135 +76,115 @@ export class TestRandom {
85
76
  const newSeed2 = this.leastSignificantBits(product2);
86
77
  const result = newSeed1 << 8 | newSeed2 >> 16;
87
78
  return [result >>> 32 - bits, new Data(newSeed1, newSeed2, data.nextNextGaussians)];
88
- }, fileName_1 + ":74:35");
79
+ }, fileName_1 + ":67:35")(this.randomState);
89
80
  };
90
-
91
- this.randomBoolean = tsplus_module_5.map_(this.randomBits(1), n => n !== 0, fileName_1 + ":87:49");
92
-
81
+ this.randomBoolean = tsplus_module_5.map(n => n !== 0, fileName_1 + ":79:49")(this.randomBits(1));
93
82
  this.randomBytes = length => {
94
83
  const loop = (i, rnd, n, acc) => {
95
84
  if (i === length) {
96
- return tsplus_module_5.map_(acc, l => tsplus_module_9.reverse(l), fileName_1 + ":92:23");
85
+ return tsplus_module_5.map(l => tsplus_module_9.reverse(l), fileName_1 + ":83:23")(acc);
97
86
  } else if (n > 0) {
98
- return tsplus_module_5.flatMap_(rnd, rnd => loop(i + 1, tsplus_module_5.succeedNow(rnd >> 8, fileName_1 + ":97:26"), n - 1, tsplus_module_5.map_(acc, _ => tsplus_module_9.prepend_(_, rnd), fileName_1 + ":99:20")), fileName_1 + ":94:27");
87
+ return tsplus_module_5.flatMap(rnd => loop(i + 1, tsplus_module_5.succeedNow(rnd >> 8, fileName_1 + ":88:26"), n - 1, tsplus_module_5.map(_ => tsplus_module_9.prepend(rnd)(_), fileName_1 + ":90:20")(acc)), fileName_1 + ":85:27")(rnd);
99
88
  } else {
100
89
  return loop(i, this.nextInt, Math.min(length - i, 4), acc);
101
90
  }
102
91
  };
103
-
104
- return tsplus_module_5.map_(loop(0, this.randomInt, Math.min(length, 4), tsplus_module_5.succeedNow(tsplus_module_10.empty(), fileName_1 + ":107:70")), list => Array.from(list), fileName_1 + ":107:89");
92
+ return tsplus_module_5.map(list => Array.from(list), fileName_1 + ":97:89")(loop(0, this.randomInt, Math.min(length, 4), tsplus_module_5.succeedNow(tsplus_module_10.empty(), fileName_1 + ":97:70")));
105
93
  };
106
-
107
94
  this.randomIntBounded = n => {
108
95
  if (n <= 0) {
109
- return tsplus_module_5.haltNow(new IllegalArgumentError("n must be positive", "TestRandom.randomIntBounded"), fileName_1 + ":112:24");
96
+ return tsplus_module_5.haltNow(new IllegalArgumentError("n must be positive", "TestRandom.randomIntBounded"), fileName_1 + ":101:24");
110
97
  } else if ((n & -n) === n) {
111
- return tsplus_module_5.map_(this.randomBits(31), _ => _ >> Math.clz32(n), fileName_1 + ":114:37");
98
+ return tsplus_module_5.map(_ => _ >> Math.clz32(n), fileName_1 + ":103:37")(this.randomBits(31));
112
99
  } else {
113
- const loop = tsplus_module_5.flatMap_(this.randomBits(31), i => {
100
+ const loop = tsplus_module_5.flatMap(i => {
114
101
  const value = i % n;
115
- if (i - value + (n - 1) < 0) return loop;else return tsplus_module_5.succeedNow(value, fileName_1 + ":119:34");
116
- }, fileName_1 + ":116:60");
102
+ if (i - value + (n - 1) < 0) return loop;else return tsplus_module_5.succeedNow(value, fileName_1 + ":108:34");
103
+ }, fileName_1 + ":105:60")(this.randomBits(31));
117
104
  return loop;
118
105
  }
119
106
  };
120
-
121
- this.randomLong = tsplus_module_5.flatMap_(this.randomBits(32), i1 => tsplus_module_5.flatMap_(this.randomBits(32), i2 => tsplus_module_5.succeedNow(BigInt(i1 << 32) + BigInt(i2), fileName_1 + ":126:54"), fileName_1 + ":126:32"), fileName_1 + ":125:64");
107
+ this.randomLong = tsplus_module_5.flatMap(i1 => tsplus_module_5.flatMap(i2 => tsplus_module_5.succeedNow(BigInt(i1 << 32) + BigInt(i2), fileName_1 + ":114:54"), fileName_1 + ":114:32")(this.randomBits(32)), fileName_1 + ":113:64")(this.randomBits(32));
122
108
  this.randomInt = this.randomBits(32);
123
- this.randomDouble = tsplus_module_5.flatMap_(this.randomBits(26), i1 => tsplus_module_5.map_(this.randomBits(27), i2 => (i1 * (1 << 27) + i2) / (1 << 53), fileName_1 + ":132:28"), fileName_1 + ":131:53");
109
+ this.randomDouble = tsplus_module_5.flatMap(i1 => tsplus_module_5.map(i2 => (i1 * (1 << 27) + i2) / (1 << 53), fileName_1 + ":118:28")(this.randomBits(27)), fileName_1 + ":117:53")(this.randomBits(26));
124
110
  this.random = this.randomBits(26);
125
111
  }
126
-
127
112
  feedBooleans(...booleans) {
128
- return tsplus_module_3.update_(this.bufferState, buff => buff.copy({
129
- booleans: tsplus_module_2.concat_(tsplus_module_2.from(booleans), buff.booleans)
130
- }), fileName_1 + ":24:35");
113
+ return tsplus_module_3.update(buff => buff.copy({
114
+ booleans: tsplus_module_2.concat(buff.booleans)(tsplus_module_2.from(booleans))
115
+ }), fileName_1 + ":23:35")(this.bufferState);
131
116
  }
132
-
133
117
  feedBytes(...bytes) {
134
- return tsplus_module_3.update_(this.bufferState, data => data.copy({
135
- bytes: tsplus_module_2.concat_(tsplus_module_2.from(bytes), data.bytes)
136
- }), fileName_1 + ":27:35");
118
+ return tsplus_module_3.update(data => data.copy({
119
+ bytes: tsplus_module_2.concat(data.bytes)(tsplus_module_2.from(bytes))
120
+ }), fileName_1 + ":26:35")(this.bufferState);
137
121
  }
138
-
139
122
  feedChars(...chars) {
140
- return tsplus_module_3.update_(this.bufferState, data => data.copy({
141
- chars: tsplus_module_2.concat_(tsplus_module_2.from(chars), data.chars)
142
- }), fileName_1 + ":30:35");
123
+ return tsplus_module_3.update(data => data.copy({
124
+ chars: tsplus_module_2.concat(data.chars)(tsplus_module_2.from(chars))
125
+ }), fileName_1 + ":29:35")(this.bufferState);
143
126
  }
144
-
145
127
  feedDoubles(...doubles) {
146
- return tsplus_module_3.update_(this.bufferState, data => data.copy({
147
- doubles: tsplus_module_2.concat_(tsplus_module_2.from(doubles), data.doubles)
148
- }), fileName_1 + ":33:35");
128
+ return tsplus_module_3.update(data => data.copy({
129
+ doubles: tsplus_module_2.concat(data.doubles)(tsplus_module_2.from(doubles))
130
+ }), fileName_1 + ":32:35")(this.bufferState);
149
131
  }
150
-
151
132
  feedInts(...ints) {
152
- return tsplus_module_3.update_(this.bufferState, data => data.copy({
153
- integers: tsplus_module_2.concat_(tsplus_module_2.from(ints), data.integers)
154
- }), fileName_1 + ":36:35");
133
+ return tsplus_module_3.update(data => data.copy({
134
+ integers: tsplus_module_2.concat(data.integers)(tsplus_module_2.from(ints))
135
+ }), fileName_1 + ":35:35")(this.bufferState);
155
136
  }
156
-
157
137
  feedStrings(...strings) {
158
- return tsplus_module_3.update_(this.bufferState, data => data.copy({
159
- strings: tsplus_module_2.concat_(tsplus_module_2.from(strings), data.strings)
160
- }), fileName_1 + ":39:35");
138
+ return tsplus_module_3.update(data => data.copy({
139
+ strings: tsplus_module_2.concat(data.strings)(tsplus_module_2.from(strings))
140
+ }), fileName_1 + ":38:35")(this.bufferState);
161
141
  }
162
-
163
142
  setSeed(seed) {
164
143
  const mash = Mash();
165
144
  const newSeed = mash(seed.toString());
166
145
  const seed1 = Math.floor(newSeed >>> 24);
167
146
  const seed2 = Math.floor(newSeed) & (1 << 24) - 1;
168
- return tsplus_module_7.set_(this.randomState, new Data(seed1, seed2, tsplus_module_6.empty()), fileName_1 + ":48:32");
147
+ return tsplus_module_7.set(new Data(seed1, seed2, tsplus_module_6.empty()), fileName_1 + ":46:32")(this.randomState);
169
148
  }
170
-
171
149
  get nextInt() {
172
150
  return this.getOrElse(this.bufferedInt, this.randomInt);
173
151
  }
174
-
175
152
  get nextBoolean() {
176
153
  return this.getOrElse(this.bufferedBoolean, this.randomBoolean);
177
154
  }
178
-
179
155
  get nextDouble() {
180
156
  return this.getOrElse(this.bufferedDouble, this.randomDouble);
181
157
  }
182
-
183
158
  get next() {
184
159
  return this.getOrElse(this.bufferedDouble, this.random);
185
160
  }
186
-
187
161
  nextBigIntBetween(low, high) {
188
- return tsplus_module_5.repeatUntil_(this.randomLong, n => low <= n && n < high, fileName_1 + ":154:39");
162
+ return tsplus_module_5.repeatUntil(n => low <= n && n < high, fileName_1 + ":134:39")(this.randomLong);
189
163
  }
190
-
191
164
  nextIntBetween(low, high) {
192
165
  return nextIntBetweenWith(low, high, this.randomInt, this.randomIntBounded);
193
166
  }
194
-
195
167
  nextRange(low, high) {
196
- return tsplus_module_5.map_(this.next, n => (high - low + 1) * n + low, fileName_1 + ":162:25");
168
+ return tsplus_module_5.map(n => (high - low + 1) * n + low, fileName_1 + ":140:25")(this.next);
197
169
  }
198
-
199
170
  nextArrayIntBetween(low, high) {
200
171
  const self = this;
201
- return tsplus_module_5.map_(tsplus_module_5.gen(function* (_) {
172
+ return tsplus_module_5.map(ns => trimArrayIntInplace(addArrayIntToNew({
173
+ sign: 1,
174
+ data: ns
175
+ }, low)), fileName_1 + ":164:11")(tsplus_module_5.gen(function* (_) {
202
176
  const rangeSize = trimArrayIntInplace(addOneToPositiveArrayInt(substractArrayIntToNew(high, low)));
203
177
  const rangeLength = rangeSize.data.length;
204
178
  const out = [];
205
-
206
179
  while (true) {
207
180
  for (let index = 0; index !== rangeLength; ++index) {
208
181
  const indexRangeSize = index === 0 ? rangeSize.data[0] + 1 : 0x100000000;
209
- const g = yield* _(self.randomIntBounded(indexRangeSize), fileName_1 + ":174:42");
182
+ const g = yield* _(self.randomIntBounded(indexRangeSize), fileName_1 + ":151:42");
210
183
  out[index] = g;
211
184
  }
212
-
213
185
  for (let index = 0; index !== rangeLength; ++index) {
214
186
  const current = out[index];
215
187
  const currentInRange = rangeSize.data[index];
216
-
217
188
  if (current < currentInRange) {
218
189
  return out;
219
190
  } else if (current > currentInRange) {
@@ -221,33 +192,26 @@ export class TestRandom {
221
192
  }
222
193
  }
223
194
  }
224
- }, fileName_1 + ":167:18"), ns => trimArrayIntInplace(addArrayIntToNew({
225
- sign: 1,
226
- data: ns
227
- }, low)), fileName_1 + ":187:11");
195
+ }, fileName_1 + ":144:18"));
228
196
  }
229
-
230
197
  }
231
198
  /**
232
199
  * @internal
233
200
  */
234
-
235
201
  function nextIntBetweenWith(min, max, nextInt, nextIntBounded) {
236
202
  if (min >= max) {
237
- return tsplus_module_5.haltNow(new IllegalArgumentError("invalid bounds", "TestRandom.nextIntBetweenWith"), fileName_1 + ":201:22");
203
+ return tsplus_module_5.haltNow(new IllegalArgumentError("invalid bounds", "TestRandom.nextIntBetweenWith"), fileName_1 + ":177:22");
238
204
  } else {
239
205
  const difference = max - min;
240
- if (difference > 0) return tsplus_module_5.map_(nextIntBounded(difference), n => n + min, fileName_1 + ":204:62");else return tsplus_module_5.repeatUntil_(nextInt, n => min <= n && n < max, fileName_1 + ":205:36");
206
+ if (difference > 0) return tsplus_module_5.map(n => n + min, fileName_1 + ":180:62")(nextIntBounded(difference));else return tsplus_module_5.repeatUntil(n => min <= n && n < max, fileName_1 + ":181:36")(nextInt);
241
207
  }
242
208
  }
243
-
244
209
  export class Data {
245
210
  constructor(seed1, seed2, nextNextGaussians = tsplus_module_6.empty()) {
246
211
  this.seed1 = seed1;
247
212
  this.seed2 = seed2;
248
213
  this.nextNextGaussians = nextNextGaussians;
249
214
  }
250
-
251
215
  }
252
216
  export class Buffer {
253
217
  constructor(booleans = tsplus_module_2.empty(), bytes = tsplus_module_2.empty(), chars = tsplus_module_2.empty(), doubles = tsplus_module_2.empty(), integers = tsplus_module_2.empty(), strings = tsplus_module_2.empty()) {
@@ -258,17 +222,13 @@ export class Buffer {
258
222
  this.integers = integers;
259
223
  this.strings = strings;
260
224
  }
261
-
262
225
  copy(_) {
263
226
  return new Buffer(_.booleans ?? this.booleans, _.bytes ?? this.bytes, _.chars ?? this.chars, _.doubles ?? this.doubles, _.integers ?? this.integers, _.strings ?? this.strings);
264
227
  }
265
-
266
228
  }
267
229
  /** @internal */
268
-
269
230
  function isStrictlySmaller(dataA, dataB) {
270
231
  const maxLength = Math.max(dataA.length, dataB.length);
271
-
272
232
  for (let index = 0; index < maxLength; ++index) {
273
233
  const indexA = index + dataA.length - maxLength;
274
234
  const indexB = index + dataB.length - maxLength;
@@ -277,10 +237,8 @@ function isStrictlySmaller(dataA, dataB) {
277
237
  if (vA < vB) return true;
278
238
  if (vA > vB) return false;
279
239
  }
280
-
281
240
  return false;
282
241
  }
283
-
284
242
  export function substractArrayIntToNew(arrayIntA, arrayIntB) {
285
243
  if (arrayIntA.sign !== arrayIntB.sign) {
286
244
  return addArrayIntToNew(arrayIntA, {
@@ -288,19 +246,15 @@ export function substractArrayIntToNew(arrayIntA, arrayIntB) {
288
246
  data: arrayIntB.data
289
247
  });
290
248
  }
291
-
292
249
  const dataA = arrayIntA.data;
293
250
  const dataB = arrayIntB.data;
294
-
295
251
  if (isStrictlySmaller(dataA, dataB)) {
296
252
  const out = substractArrayIntToNew(arrayIntB, arrayIntA);
297
253
  out.sign = -out.sign;
298
254
  return out;
299
255
  }
300
-
301
256
  const data = [];
302
257
  let reminder = 0;
303
-
304
258
  for (let indexA = dataA.length - 1, indexB = dataB.length - 1; indexA >= 0 || indexB >= 0; --indexA, --indexB) {
305
259
  const vA = indexA >= 0 ? dataA[indexA] : 0;
306
260
  const vB = indexB >= 0 ? dataB[indexB] : 0;
@@ -308,7 +262,6 @@ export function substractArrayIntToNew(arrayIntA, arrayIntB) {
308
262
  data.push(current >>> 0);
309
263
  reminder = current < 0 ? 1 : 0;
310
264
  }
311
-
312
265
  return {
313
266
  sign: arrayIntA.sign,
314
267
  data: data.reverse()
@@ -318,20 +271,17 @@ export function substractArrayIntToNew(arrayIntA, arrayIntB) {
318
271
  * Trim uneeded zeros in ArrayInt
319
272
  * and uniform notation for zero: {sign: 1, data: [0]}
320
273
  */
321
-
322
274
  export function trimArrayIntInplace(arrayInt) {
323
275
  const data = arrayInt.data;
324
- let firstNonZero = 0; // eslint-disable-next-line no-empty
325
-
276
+ let firstNonZero = 0;
277
+ // eslint-disable-next-line no-empty
326
278
  for (; firstNonZero !== data.length && data[firstNonZero] === 0; ++firstNonZero) {}
327
-
328
279
  if (firstNonZero === data.length) {
329
280
  // only zeros
330
281
  arrayInt.sign = 1;
331
282
  arrayInt.data = [0];
332
283
  return arrayInt;
333
284
  }
334
-
335
285
  data.splice(0, firstNonZero);
336
286
  return arrayInt;
337
287
  /* eslint-enable */
@@ -340,7 +290,6 @@ export function trimArrayIntInplace(arrayInt) {
340
290
  * Add two ArrayInt
341
291
  * @internal
342
292
  */
343
-
344
293
  export function addArrayIntToNew(arrayIntA, arrayIntB) {
345
294
  if (arrayIntA.sign !== arrayIntB.sign) {
346
295
  return substractArrayIntToNew(arrayIntA, {
@@ -348,12 +297,10 @@ export function addArrayIntToNew(arrayIntA, arrayIntB) {
348
297
  data: arrayIntB.data
349
298
  });
350
299
  }
351
-
352
300
  const data = [];
353
301
  let reminder = 0;
354
302
  const dataA = arrayIntA.data;
355
303
  const dataB = arrayIntB.data;
356
-
357
304
  for (let indexA = dataA.length - 1, indexB = dataB.length - 1; indexA >= 0 || indexB >= 0; --indexA, --indexB) {
358
305
  const vA = indexA >= 0 ? dataA[indexA] : 0;
359
306
  const vB = indexB >= 0 ? dataB[indexB] : 0;
@@ -361,11 +308,9 @@ export function addArrayIntToNew(arrayIntA, arrayIntB) {
361
308
  data.push(current >>> 0);
362
309
  reminder = ~~(current / 0x100000000);
363
310
  }
364
-
365
311
  if (reminder !== 0) {
366
312
  data.push(reminder);
367
313
  }
368
-
369
314
  return {
370
315
  sign: arrayIntA.sign,
371
316
  data: data.reverse()
@@ -375,12 +320,9 @@ export function addArrayIntToNew(arrayIntA, arrayIntB) {
375
320
  * Add one to a given positive ArrayInt
376
321
  * @internal
377
322
  */
378
-
379
323
  export function addOneToPositiveArrayInt(arrayInt) {
380
324
  arrayInt.sign = 1; // handling case { sign: -1, data: [0,...,0] }
381
-
382
325
  const data = arrayInt.data;
383
-
384
326
  for (let index = data.length - 1; index >= 0; --index) {
385
327
  if (data[index] === 0xffffffff) {
386
328
  data[index] = 0;
@@ -389,7 +331,6 @@ export function addOneToPositiveArrayInt(arrayInt) {
389
331
  return arrayInt;
390
332
  }
391
333
  }
392
-
393
334
  data.unshift(1);
394
335
  return arrayInt;
395
336
  /* eslint-enable */
@@ -397,7 +338,6 @@ export function addOneToPositiveArrayInt(arrayInt) {
397
338
 
398
339
  function Mash() {
399
340
  let n = 0xefc8249d;
400
-
401
341
  const mash = function (data) {
402
342
  for (let i = 0; i < data.length; i++) {
403
343
  n += data.charCodeAt(i);