functionalscript 0.2.5 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. package/.github/workflows/ci.yml +19 -4
  2. package/CHANGELOG.md +9 -0
  3. package/com/cpp/{module.f.mjs → module.f.ts} +65 -44
  4. package/com/cpp/{test.f.mjs → test.f.ts} +1 -1
  5. package/com/cpp/testlib.f.ts +8 -0
  6. package/com/cs/{module.f.mjs → module.f.ts} +47 -38
  7. package/com/cs/{test.f.mjs → test.f.ts} +2 -2
  8. package/com/cs/testlib.f.ts +8 -0
  9. package/com/rust/module.f.ts +287 -0
  10. package/com/rust/{test.f.mjs → test.f.ts} +1 -1
  11. package/com/rust/testlib.f.ts +8 -0
  12. package/com/test/{build.f.mjs → build.f.ts} +47 -45
  13. package/com/test/{build.mjs → build.ts} +7 -6
  14. package/com/types/module.f.ts +62 -0
  15. package/com/types/{testlib.f.mjs → testlib.f.ts} +2 -3
  16. package/commonjs/build/module.f.ts +100 -0
  17. package/commonjs/build/{test.f.mjs → test.f.ts} +21 -17
  18. package/commonjs/module/function/module.f.ts +13 -0
  19. package/commonjs/module/module.f.ts +41 -0
  20. package/commonjs/module.f.ts +7 -0
  21. package/commonjs/{module.mjs → module.ts} +12 -9
  22. package/commonjs/package/dependencies/module.f.ts +22 -0
  23. package/commonjs/package/dependencies/{test.f.mjs → test.f.ts} +1 -1
  24. package/commonjs/package/module.f.ts +31 -0
  25. package/commonjs/package/{test.f.mjs → test.f.ts} +1 -1
  26. package/commonjs/path/{module.f.mjs → module.f.ts} +72 -67
  27. package/commonjs/path/{test.f.mjs → test.f.ts} +25 -19
  28. package/commonjs/{test.mjs → test.ts} +5 -4
  29. package/crypto/prime_field/{module.f.mjs → module.f.ts} +40 -37
  30. package/crypto/prime_field/{test.f.mjs → test.f.ts} +7 -5
  31. package/crypto/secp/{module.f.mjs → module.f.ts} +44 -44
  32. package/crypto/secp/{test.f.mjs → test.f.ts} +16 -11
  33. package/crypto/sha2/{module.f.mjs → module.f.ts} +61 -46
  34. package/crypto/sha2/{test.f.mjs → test.f.ts} +12 -9
  35. package/deno.json +71 -0
  36. package/dev/README.md +8 -0
  37. package/dev/index.ts +3 -0
  38. package/dev/{module.f.mjs → module.f.ts} +0 -2
  39. package/dev/{module.mjs → module.ts} +65 -60
  40. package/dev/test/{module.f.mjs → module.f.ts} +57 -70
  41. package/dev/{test.f.mjs → test.f.ts} +7 -5
  42. package/dev/test.ts +53 -0
  43. package/djs/{module.f.mjs → module.f.ts} +31 -31
  44. package/djs/parser/{module.f.mjs → module.f.ts} +190 -182
  45. package/djs/parser/{test.f.mjs → test.f.ts} +173 -150
  46. package/djs/serializer/module.f.ts +90 -0
  47. package/djs/{test.f.mjs → test.f.ts} +4 -4
  48. package/djs/tokenizer/{module.f.mjs → module.f.ts} +35 -42
  49. package/djs/tokenizer/{test.f.mjs → test.f.ts} +9 -8
  50. package/fsc/{module.f.mjs → module.f.ts} +41 -44
  51. package/fsc/{test.f.mjs → test.f.ts} +8 -6
  52. package/fsm/module.f.ts +107 -0
  53. package/fsm/{test.f.mjs → test.f.ts} +10 -9
  54. package/html/README.md +10 -9
  55. package/html/module.f.ts +108 -0
  56. package/html/{test.f.mjs → test.f.ts} +10 -7
  57. package/issues/README.md +3 -0
  58. package/issues/lang/3110-function.md +25 -1
  59. package/issues/{test.f.mjs → test.f.ts} +3 -2
  60. package/js/tokenizer/module.f.ts +882 -0
  61. package/js/tokenizer/{test.f.mjs → test.f.ts} +11 -10
  62. package/json/module.f.ts +94 -0
  63. package/json/parser/{module.f.mjs → module.f.ts} +113 -109
  64. package/json/parser/{test.f.mjs → test.f.ts} +10 -9
  65. package/json/serializer/module.f.ts +70 -0
  66. package/json/serializer/{test.f.mjs → test.f.ts} +3 -3
  67. package/json/{test.f.mjs → test.f.ts} +3 -3
  68. package/json/tokenizer/{module.f.mjs → module.f.ts} +29 -36
  69. package/json/tokenizer/{test.f.mjs → test.f.ts} +9 -8
  70. package/nanvm-lib/src/extension.rs +15 -4
  71. package/nanvm-lib/src/interface.rs +7 -10
  72. package/nanvm-lib/src/lib.rs +3 -3
  73. package/nanvm-lib/src/naive.rs +10 -3
  74. package/nanvm-lib/src/nanenum.rs +5 -1
  75. package/nanvm-lib/tests/{test.f.mjs → test.f.ts} +7 -6
  76. package/nodejs/version/{main.mjs → main.ts} +1 -1
  77. package/nodejs/version/module.f.ts +42 -0
  78. package/nodejs/version/{test.f.mjs → test.f.ts} +11 -12
  79. package/package.json +9 -9
  80. package/text/ascii/{module.f.mjs → module.f.ts} +10 -8
  81. package/text/ascii/{test.f.mjs → test.f.ts} +4 -4
  82. package/text/module.f.ts +30 -0
  83. package/text/sgr/{module.f.mjs → module.f.ts} +3 -5
  84. package/text/{test.f.mjs → test.f.ts} +5 -4
  85. package/text/utf16/module.f.ts +108 -0
  86. package/text/utf16/{test.f.mjs → test.f.ts} +7 -6
  87. package/text/utf8/{module.f.mjs → module.f.ts} +29 -23
  88. package/text/utf8/{test.f.mjs → test.f.ts} +4 -4
  89. package/tsconfig.json +4 -1
  90. package/types/array/module.f.ts +89 -0
  91. package/types/array/{test.f.mjs → test.f.ts} +3 -3
  92. package/types/bigfloat/{module.f.mjs → module.f.ts} +25 -20
  93. package/types/bigfloat/{test.f.mjs → test.f.ts} +1 -1
  94. package/types/bigint/{module.f.mjs → module.f.ts} +29 -28
  95. package/types/bigint/{test.f.mjs → test.f.ts} +2 -2
  96. package/types/bit_vec/README.md +18 -0
  97. package/types/bit_vec/module.f.ts +185 -0
  98. package/types/bit_vec/test.f.ts +129 -0
  99. package/types/btree/find/module.f.ts +92 -0
  100. package/types/btree/find/{test.f.mjs → test.f.ts} +20 -16
  101. package/types/btree/{module.f.mjs → module.f.ts} +9 -9
  102. package/types/btree/remove/{module.f.mjs → module.f.ts} +43 -53
  103. package/types/btree/remove/{test.f.mjs → test.f.ts} +19 -15
  104. package/types/btree/set/{module.f.mjs → module.f.ts} +17 -20
  105. package/types/btree/set/{test.f.mjs → test.f.ts} +96 -66
  106. package/types/btree/{test.f.mjs → test.f.ts} +34 -26
  107. package/types/btree/types/module.f.ts +27 -0
  108. package/types/byte_set/module.f.ts +70 -0
  109. package/types/byte_set/{test.f.mjs → test.f.ts} +8 -7
  110. package/types/function/compare/module.f.ts +26 -0
  111. package/types/function/compare/{test.f.mjs → test.f.ts} +1 -1
  112. package/types/function/module.f.ts +43 -0
  113. package/types/function/operator/module.f.ts +63 -0
  114. package/types/function/test.f.ts +20 -0
  115. package/types/list/module.f.ts +345 -0
  116. package/types/list/{test.f.mjs → test.f.ts} +30 -24
  117. package/types/map/module.f.ts +65 -0
  118. package/types/map/{test.f.mjs → test.f.ts} +6 -5
  119. package/types/nibble_set/module.f.ts +34 -0
  120. package/types/nibble_set/{test.f.mjs → test.f.ts} +3 -3
  121. package/types/nullable/module.f.ts +9 -0
  122. package/types/nullable/{test.f.mjs → test.f.ts} +2 -2
  123. package/types/number/module.f.ts +16 -0
  124. package/types/number/{test.f.mjs → test.f.ts} +7 -5
  125. package/types/object/module.f.ts +30 -0
  126. package/types/object/{test.f.mjs → test.f.ts} +2 -2
  127. package/types/range/module.f.ts +10 -0
  128. package/types/range/{test.f.mjs → test.f.ts} +1 -1
  129. package/types/range_map/module.f.ts +70 -0
  130. package/types/range_map/{test.f.mjs → test.f.ts} +82 -57
  131. package/types/result/module.f.ts +20 -0
  132. package/types/result/{module.mjs → module.ts} +4 -3
  133. package/types/sorted_list/module.f.ts +83 -0
  134. package/types/sorted_list/{test.f.mjs → test.f.ts} +14 -12
  135. package/types/sorted_set/module.f.ts +36 -0
  136. package/types/sorted_set/{test.f.mjs → test.f.ts} +14 -12
  137. package/types/string/module.f.ts +24 -0
  138. package/types/string/{test.f.mjs → test.f.ts} +2 -2
  139. package/types/string_set/module.f.ts +37 -0
  140. package/types/string_set/{test.f.mjs → test.f.ts} +2 -2
  141. package/com/cpp/testlib.f.mjs +0 -8
  142. package/com/cs/testlib.f.mjs +0 -8
  143. package/com/rust/module.f.mjs +0 -272
  144. package/com/rust/testlib.f.mjs +0 -8
  145. package/com/types/module.f.mjs +0 -67
  146. package/commonjs/build/module.f.mjs +0 -100
  147. package/commonjs/module/function/module.f.mjs +0 -21
  148. package/commonjs/module/module.f.mjs +0 -53
  149. package/commonjs/module.f.mjs +0 -11
  150. package/commonjs/package/dependencies/module.f.mjs +0 -22
  151. package/commonjs/package/module.f.mjs +0 -36
  152. package/dev/index.mjs +0 -3
  153. package/dev/test.mjs +0 -60
  154. package/fsm/module.f.mjs +0 -99
  155. package/html/module.f.mjs +0 -102
  156. package/js/tokenizer/module.f.mjs +0 -872
  157. package/json/module.f.mjs +0 -89
  158. package/json/serializer/module.f.mjs +0 -87
  159. package/jsr.json +0 -66
  160. package/nodejs/version/module.f.mjs +0 -47
  161. package/out/com/cpp/module.f.d.mts +0 -7
  162. package/out/com/cpp/module.f.mjs +0 -130
  163. package/out/com/cpp/test.f.d.mts +0 -2
  164. package/out/com/cpp/test.f.mjs +0 -40
  165. package/out/com/cpp/testlib.f.d.mts +0 -2
  166. package/out/com/cpp/testlib.f.mjs +0 -7
  167. package/out/com/cs/module.f.d.mts +0 -7
  168. package/out/com/cs/module.f.mjs +0 -104
  169. package/out/com/cs/test.f.d.mts +0 -2
  170. package/out/com/cs/test.f.mjs +0 -43
  171. package/out/com/cs/testlib.f.d.mts +0 -2
  172. package/out/com/cs/testlib.f.mjs +0 -7
  173. package/out/com/rust/module.f.d.mts +0 -23
  174. package/out/com/rust/module.f.mjs +0 -224
  175. package/out/com/rust/test.f.d.mts +0 -2
  176. package/out/com/rust/test.f.mjs +0 -123
  177. package/out/com/rust/testlib.f.d.mts +0 -2
  178. package/out/com/rust/testlib.f.mjs +0 -7
  179. package/out/com/test/build.d.mts +0 -1
  180. package/out/com/test/build.f.d.mts +0 -26
  181. package/out/com/test/build.f.mjs +0 -98
  182. package/out/com/test/build.mjs +0 -40
  183. package/out/com/types/module.f.d.mts +0 -23
  184. package/out/com/types/module.f.mjs +0 -51
  185. package/out/com/types/testlib.f.d.mts +0 -44
  186. package/out/com/types/testlib.f.mjs +0 -30
  187. package/out/commonjs/build/module.f.d.mts +0 -20
  188. package/out/commonjs/build/module.f.mjs +0 -107
  189. package/out/commonjs/build/test.f.d.mts +0 -3
  190. package/out/commonjs/build/test.f.mjs +0 -102
  191. package/out/commonjs/module/function/module.f.d.mts +0 -5
  192. package/out/commonjs/module/function/module.f.mjs +0 -15
  193. package/out/commonjs/module/module.f.d.mts +0 -52
  194. package/out/commonjs/module/module.f.mjs +0 -48
  195. package/out/commonjs/module.d.mts +0 -3
  196. package/out/commonjs/module.f.d.mts +0 -2
  197. package/out/commonjs/module.f.mjs +0 -10
  198. package/out/commonjs/module.mjs +0 -26
  199. package/out/commonjs/package/dependencies/module.f.d.mts +0 -6
  200. package/out/commonjs/package/dependencies/module.f.mjs +0 -21
  201. package/out/commonjs/package/dependencies/test.f.d.mts +0 -2
  202. package/out/commonjs/package/dependencies/test.f.mjs +0 -15
  203. package/out/commonjs/package/module.f.d.mts +0 -21
  204. package/out/commonjs/package/module.f.mjs +0 -40
  205. package/out/commonjs/package/test.f.d.mts +0 -2
  206. package/out/commonjs/package/test.f.mjs +0 -27
  207. package/out/commonjs/path/module.f.d.mts +0 -60
  208. package/out/commonjs/path/module.f.mjs +0 -171
  209. package/out/commonjs/path/test.f.d.mts +0 -25
  210. package/out/commonjs/path/test.f.mjs +0 -231
  211. package/out/commonjs/test.d.mts +0 -8
  212. package/out/commonjs/test.mjs +0 -87
  213. package/out/crypto/prime_field/module.f.d.mts +0 -67
  214. package/out/crypto/prime_field/module.f.mjs +0 -110
  215. package/out/crypto/prime_field/test.f.d.mts +0 -13
  216. package/out/crypto/prime_field/test.f.mjs +0 -152
  217. package/out/crypto/secp/module.f.d.mts +0 -110
  218. package/out/crypto/secp/module.f.mjs +0 -173
  219. package/out/crypto/secp/test.f.d.mts +0 -5
  220. package/out/crypto/secp/test.f.mjs +0 -78
  221. package/out/crypto/sha2/module.f.d.mts +0 -15
  222. package/out/crypto/sha2/module.f.mjs +0 -172
  223. package/out/crypto/sha2/test.f.d.mts +0 -10
  224. package/out/crypto/sha2/test.f.mjs +0 -86
  225. package/out/dev/index.d.mts +0 -1
  226. package/out/dev/index.mjs +0 -2
  227. package/out/dev/module.d.mts +0 -26
  228. package/out/dev/module.f.d.mts +0 -1
  229. package/out/dev/module.f.mjs +0 -2
  230. package/out/dev/module.mjs +0 -167
  231. package/out/dev/test/module.f.d.mts +0 -25
  232. package/out/dev/test/module.f.mjs +0 -134
  233. package/out/dev/test.d.mts +0 -3
  234. package/out/dev/test.f.d.mts +0 -9
  235. package/out/dev/test.f.mjs +0 -58
  236. package/out/dev/test.mjs +0 -52
  237. package/out/djs/module.f.d.mts +0 -20
  238. package/out/djs/module.f.mjs +0 -79
  239. package/out/djs/parser/module.f.d.mts +0 -56
  240. package/out/djs/parser/module.f.mjs +0 -448
  241. package/out/djs/parser/test.f.d.mts +0 -13
  242. package/out/djs/parser/test.f.mjs +0 -569
  243. package/out/djs/test.f.d.mts +0 -12
  244. package/out/djs/test.f.mjs +0 -84
  245. package/out/djs/tokenizer/module.f.d.mts +0 -13
  246. package/out/djs/tokenizer/module.f.mjs +0 -91
  247. package/out/djs/tokenizer/test.f.d.mts +0 -7
  248. package/out/djs/tokenizer/test.f.mjs +0 -530
  249. package/out/fsc/module.f.d.mts +0 -7
  250. package/out/fsc/module.f.mjs +0 -105
  251. package/out/fsc/test.f.d.mts +0 -4
  252. package/out/fsc/test.f.mjs +0 -19
  253. package/out/fsm/module.f.d.mts +0 -14
  254. package/out/fsm/module.f.mjs +0 -80
  255. package/out/fsm/test.f.d.mts +0 -5
  256. package/out/fsm/test.f.mjs +0 -138
  257. package/out/html/module.f.d.mts +0 -17
  258. package/out/html/module.f.mjs +0 -80
  259. package/out/html/test.f.d.mts +0 -10
  260. package/out/html/test.f.mjs +0 -45
  261. package/out/issues/test.f.d.mts +0 -16
  262. package/out/issues/test.f.mjs +0 -66
  263. package/out/js/tokenizer/module.f.d.mts +0 -163
  264. package/out/js/tokenizer/module.f.mjs +0 -729
  265. package/out/js/tokenizer/test.f.d.mts +0 -9
  266. package/out/js/tokenizer/test.f.mjs +0 -906
  267. package/out/json/module.f.d.mts +0 -33
  268. package/out/json/module.f.mjs +0 -89
  269. package/out/json/parser/module.f.d.mts +0 -32
  270. package/out/json/parser/module.f.mjs +0 -224
  271. package/out/json/parser/test.f.d.mts +0 -5
  272. package/out/json/parser/test.f.mjs +0 -329
  273. package/out/json/serializer/module.f.d.mts +0 -36
  274. package/out/json/serializer/module.f.mjs +0 -67
  275. package/out/json/serializer/test.f.d.mts +0 -8
  276. package/out/json/serializer/test.f.mjs +0 -87
  277. package/out/json/test.f.d.mts +0 -8
  278. package/out/json/test.f.mjs +0 -61
  279. package/out/json/tokenizer/module.f.d.mts +0 -13
  280. package/out/json/tokenizer/module.f.mjs +0 -78
  281. package/out/json/tokenizer/test.f.d.mts +0 -6
  282. package/out/json/tokenizer/test.f.mjs +0 -420
  283. package/out/nanvm-lib/tests/test.f.d.mts +0 -36
  284. package/out/nanvm-lib/tests/test.f.mjs +0 -87
  285. package/out/nodejs/version/main.d.mts +0 -1
  286. package/out/nodejs/version/main.mjs +0 -3
  287. package/out/nodejs/version/module.f.d.mts +0 -12
  288. package/out/nodejs/version/module.f.mjs +0 -34
  289. package/out/nodejs/version/test.f.d.mts +0 -2
  290. package/out/nodejs/version/test.f.mjs +0 -97
  291. package/out/text/ascii/module.f.d.mts +0 -70
  292. package/out/text/ascii/module.f.mjs +0 -154
  293. package/out/text/ascii/test.f.d.mts +0 -4
  294. package/out/text/ascii/test.f.mjs +0 -14
  295. package/out/text/module.f.d.mts +0 -13
  296. package/out/text/module.f.mjs +0 -19
  297. package/out/text/sgr/module.f.d.mts +0 -12
  298. package/out/text/sgr/module.f.mjs +0 -17
  299. package/out/text/test.f.d.mts +0 -2
  300. package/out/text/test.f.mjs +0 -19
  301. package/out/text/utf16/module.f.d.mts +0 -12
  302. package/out/text/utf16/module.f.mjs +0 -86
  303. package/out/text/utf16/test.f.d.mts +0 -6
  304. package/out/text/utf16/test.f.mjs +0 -145
  305. package/out/text/utf8/module.f.d.mts +0 -10
  306. package/out/text/utf8/module.f.mjs +0 -126
  307. package/out/text/utf8/test.f.d.mts +0 -6
  308. package/out/text/utf8/test.f.mjs +0 -175
  309. package/out/types/array/module.f.d.mts +0 -31
  310. package/out/types/array/module.f.mjs +0 -95
  311. package/out/types/array/test.f.d.mts +0 -10
  312. package/out/types/array/test.f.mjs +0 -116
  313. package/out/types/bigfloat/module.f.d.mts +0 -6
  314. package/out/types/bigfloat/module.f.mjs +0 -77
  315. package/out/types/bigfloat/test.f.d.mts +0 -6
  316. package/out/types/bigfloat/test.f.mjs +0 -349
  317. package/out/types/bigint/module.f.d.mts +0 -29
  318. package/out/types/bigint/module.f.mjs +0 -114
  319. package/out/types/bigint/test.f.d.mts +0 -16
  320. package/out/types/bigint/test.f.mjs +0 -199
  321. package/out/types/bit_vec/module.f.d.mts +0 -72
  322. package/out/types/bit_vec/module.f.mjs +0 -83
  323. package/out/types/bit_vec/test.f.d.mts +0 -9
  324. package/out/types/bit_vec/test.f.mjs +0 -60
  325. package/out/types/btree/find/module.f.d.mts +0 -36
  326. package/out/types/btree/find/module.f.mjs +0 -137
  327. package/out/types/btree/find/test.f.d.mts +0 -2
  328. package/out/types/btree/find/test.f.mjs +0 -156
  329. package/out/types/btree/module.f.d.mts +0 -5
  330. package/out/types/btree/module.f.mjs +0 -34
  331. package/out/types/btree/remove/module.f.d.mts +0 -14
  332. package/out/types/btree/remove/module.f.mjs +0 -209
  333. package/out/types/btree/remove/test.f.d.mts +0 -7
  334. package/out/types/btree/remove/test.f.mjs +0 -638
  335. package/out/types/btree/set/module.f.d.mts +0 -5
  336. package/out/types/btree/set/module.f.mjs +0 -114
  337. package/out/types/btree/set/test.f.d.mts +0 -2
  338. package/out/types/btree/set/test.f.mjs +0 -390
  339. package/out/types/btree/test.f.d.mts +0 -13
  340. package/out/types/btree/test.f.mjs +0 -83
  341. package/out/types/btree/types/module.f.d.mts +0 -14
  342. package/out/types/btree/types/module.f.mjs +0 -50
  343. package/out/types/byte_set/module.f.d.mts +0 -25
  344. package/out/types/byte_set/module.f.mjs +0 -42
  345. package/out/types/byte_set/test.f.d.mts +0 -13
  346. package/out/types/byte_set/test.f.mjs +0 -123
  347. package/out/types/function/compare/module.f.d.mts +0 -23
  348. package/out/types/function/compare/module.f.mjs +0 -22
  349. package/out/types/function/compare/test.f.d.mts +0 -2
  350. package/out/types/function/compare/test.f.mjs +0 -8
  351. package/out/types/function/module.f.d.mts +0 -51
  352. package/out/types/function/module.f.mjs +0 -44
  353. package/out/types/function/operator/module.f.d.mts +0 -60
  354. package/out/types/function/operator/module.f.mjs +0 -60
  355. package/out/types/function/test.f.d.mts +0 -2
  356. package/out/types/function/test.f.mjs +0 -15
  357. package/out/types/list/module.f.d.mts +0 -82
  358. package/out/types/list/module.f.mjs +0 -269
  359. package/out/types/list/test.f.d.mts +0 -38
  360. package/out/types/list/test.f.mjs +0 -401
  361. package/out/types/map/module.f.d.mts +0 -21
  362. package/out/types/map/module.f.mjs +0 -54
  363. package/out/types/map/test.f.d.mts +0 -5
  364. package/out/types/map/test.f.mjs +0 -115
  365. package/out/types/nibble_set/module.f.d.mts +0 -16
  366. package/out/types/nibble_set/module.f.mjs +0 -19
  367. package/out/types/nibble_set/test.f.d.mts +0 -13
  368. package/out/types/nibble_set/test.f.mjs +0 -90
  369. package/out/types/nullable/module.f.d.mts +0 -9
  370. package/out/types/nullable/module.f.mjs +0 -9
  371. package/out/types/nullable/test.f.d.mts +0 -2
  372. package/out/types/nullable/test.f.mjs +0 -12
  373. package/out/types/number/module.f.d.mts +0 -7
  374. package/out/types/number/module.f.mjs +0 -12
  375. package/out/types/number/test.f.d.mts +0 -11
  376. package/out/types/number/test.f.mjs +0 -126
  377. package/out/types/object/module.f.d.mts +0 -22
  378. package/out/types/object/module.f.mjs +0 -27
  379. package/out/types/object/test.f.d.mts +0 -5
  380. package/out/types/object/test.f.mjs +0 -17
  381. package/out/types/range/module.f.d.mts +0 -6
  382. package/out/types/range/module.f.mjs +0 -6
  383. package/out/types/range/test.f.d.mts +0 -2
  384. package/out/types/range/test.f.mjs +0 -18
  385. package/out/types/range_map/module.f.d.mts +0 -19
  386. package/out/types/range_map/module.f.mjs +0 -84
  387. package/out/types/range_map/test.f.d.mts +0 -6
  388. package/out/types/range_map/test.f.mjs +0 -201
  389. package/out/types/result/module.d.mts +0 -7
  390. package/out/types/result/module.f.d.mts +0 -22
  391. package/out/types/result/module.f.mjs +0 -25
  392. package/out/types/result/module.mjs +0 -16
  393. package/out/types/sorted_list/module.f.d.mts +0 -53
  394. package/out/types/sorted_list/module.f.mjs +0 -102
  395. package/out/types/sorted_list/test.f.d.mts +0 -5
  396. package/out/types/sorted_list/test.f.mjs +0 -66
  397. package/out/types/sorted_set/module.f.d.mts +0 -19
  398. package/out/types/sorted_set/module.f.mjs +0 -29
  399. package/out/types/sorted_set/test.f.d.mts +0 -6
  400. package/out/types/sorted_set/test.f.mjs +0 -80
  401. package/out/types/string/module.f.d.mts +0 -9
  402. package/out/types/string/module.f.mjs +0 -17
  403. package/out/types/string/test.f.d.mts +0 -15
  404. package/out/types/string/test.f.mjs +0 -58
  405. package/out/types/string_set/module.f.d.mts +0 -13
  406. package/out/types/string_set/module.f.mjs +0 -29
  407. package/out/types/string_set/test.f.d.mts +0 -5
  408. package/out/types/string_set/test.f.mjs +0 -65
  409. package/text/module.f.mjs +0 -27
  410. package/text/utf16/module.f.mjs +0 -96
  411. package/types/array/module.f.mjs +0 -119
  412. package/types/bit_vec/module.f.mjs +0 -90
  413. package/types/bit_vec/test.f.mjs +0 -41
  414. package/types/btree/find/module.f.mjs +0 -125
  415. package/types/btree/types/module.f.mjs +0 -64
  416. package/types/byte_set/module.f.mjs +0 -61
  417. package/types/function/compare/module.f.mjs +0 -29
  418. package/types/function/module.f.mjs +0 -50
  419. package/types/function/operator/module.f.mjs +0 -78
  420. package/types/function/test.f.mjs +0 -17
  421. package/types/list/module.f.mjs +0 -320
  422. package/types/map/module.f.mjs +0 -67
  423. package/types/nibble_set/module.f.mjs +0 -28
  424. package/types/nullable/module.f.mjs +0 -11
  425. package/types/number/module.f.mjs +0 -16
  426. package/types/object/module.f.mjs +0 -33
  427. package/types/range/module.f.mjs +0 -8
  428. package/types/range_map/module.f.mjs +0 -84
  429. package/types/result/module.f.mjs +0 -28
  430. package/types/sorted_list/module.f.mjs +0 -107
  431. package/types/sorted_set/module.f.mjs +0 -38
  432. package/types/string/module.f.mjs +0 -22
  433. package/types/string_set/module.f.mjs +0 -36
@@ -1,4 +1,4 @@
1
- import * as _ from './module.f.mjs'
1
+ import * as _ from './module.f.ts'
2
2
  const { prime_field, sqrt } = _
3
3
 
4
4
  export default {
@@ -35,8 +35,9 @@ export default {
35
35
  }
36
36
  },
37
37
  pow: () => {
38
- /** @type {(a: bigint) => void} */
39
- const test = a => {
38
+ const test
39
+ : (a: bigint) => void
40
+ = a => {
40
41
  if (f.pow(a)(0n) !== 1n) { throw '**0'}
41
42
  if (f.pow(a)(1n) !== a) { throw '**1' }
42
43
  // https://en.wikipedia.org/wiki/Fermat%27s_little_theorem
@@ -74,8 +75,9 @@ export default {
74
75
  if (root !== 2n) { throw root }
75
76
  },
76
77
  sqrt: () => {
77
- /** @type {(a: bigint) => void} */
78
- const test = a => {
78
+ const test
79
+ : (a: bigint) => void
80
+ = a => {
79
81
  const a2 = f.mul(a)(a)
80
82
  const s = sqrt_f(a2)
81
83
  if (s !== null && f.abs(s) !== f.abs(a)) { throw 'sqrt' }
@@ -1,47 +1,42 @@
1
- // @ts-self-types="./module.f.d.mts"
2
- import * as Operator from '../../types/function/operator/module.f.mjs'
3
- import * as pf from '../prime_field/module.f.mjs'
4
- import * as bi from '../../types/bigint/module.f.mjs'
1
+ import * as Operator from '../../types/function/operator/module.f.ts'
2
+ import * as pf from '../prime_field/module.f.ts'
3
+ import * as bi from '../../types/bigint/module.f.ts'
5
4
  const { scalar_mul } = bi
6
5
  const { prime_field, sqrt } = pf
7
6
 
8
7
  /**
9
8
  * A 2D point represented as a pair of `bigint` values `[x, y]`.
10
- *
11
- * @typedef {readonly[bigint, bigint]} Point2D
12
9
  */
10
+ type Point2D = readonly[bigint, bigint]
13
11
 
14
12
  /**
15
13
  * A 2D point on an elliptic curve, represented as a pair of `bigint` values.
16
14
  * `null` represents the point at infinity (`O`).
17
- *
18
- * @typedef {Point2D|null} Point
19
15
  */
16
+ export type Point = Point2D|null
20
17
 
21
18
  /**
22
19
  * Initialization parameters for an elliptic curve.
23
- *
24
- * @typedef {{
25
- * readonly p: bigint
26
- * readonly a: readonly[bigint, bigint]
27
- * readonly g: readonly[bigint, bigint]
28
- * readonly n: bigint
29
- * }} Init
30
20
  */
21
+ export type Init = {
22
+ readonly p: bigint
23
+ readonly a: readonly[bigint, bigint]
24
+ readonly g: readonly[bigint, bigint]
25
+ readonly n: bigint
26
+ }
31
27
 
32
28
  /**
33
29
  * Represents an elliptic curve and its associated operations.
34
- *
35
- * @typedef {{
36
- * readonly pf: pf.PrimeField
37
- * readonly nf: pf.PrimeField
38
- * readonly y2: (x: bigint) => bigint
39
- * readonly y: (x: bigint) => bigint|null
40
- * readonly neg: (a: Point) => Point
41
- * readonly add: Operator.Reduce<Point>
42
- * readonly mul: (a: Point) => (n: bigint) => Point
43
- * }} Curve
44
30
  */
31
+ type Curve = {
32
+ readonly pf: pf.PrimeField
33
+ readonly nf: pf.PrimeField
34
+ readonly y2: (x: bigint) => bigint
35
+ readonly y: (x: bigint) => bigint|null
36
+ readonly neg: (a: Point) => Point
37
+ readonly add: Operator.Reduce<Point>
38
+ readonly mul: (a: Point) => (n: bigint) => Point
39
+ }
45
40
 
46
41
  /**
47
42
  * Constructs an elliptic curve with the given initialization parameters.
@@ -62,10 +57,10 @@ const { prime_field, sqrt } = pf
62
57
  * const negPoint = curveInstance.neg([1n, 1n]); // Negate a point
63
58
  * const mulPoint = curveInstance.mul([1n, 1n])(3n); // Multiply a point by 3
64
59
  * ```
65
- *
66
- * @type {(i: Init) => Curve}
67
60
  */
68
- export const curve = ({ p, a: [a0, a1], n }) => {
61
+ export const curve
62
+ : (i: Init) => Curve
63
+ = ({ p, a: [a0, a1], n }) => {
69
64
  const pf = prime_field(p)
70
65
  const { pow2, pow3, sub, add, mul, neg, div } = pf
71
66
  const mul3 = mul(3n)
@@ -73,11 +68,15 @@ export const curve = ({ p, a: [a0, a1], n }) => {
73
68
  const addA1 = add(a1)
74
69
  const mulA1 = mul(a1)
75
70
  const addA0 = add(a0)
76
- // y**2 = a1*x**3 + a0
77
- /** @type {(x: bigint) => bigint} */
78
- const y2 = x => addA0(add(pow3(x))(mulA1(x)))
79
- /** @type {Operator.Reduce<Point>} */
80
- const addPoint = p => q => {
71
+ /**
72
+ * y**2 = a1*x**3 + a0
73
+ */
74
+ const y2
75
+ : (x: bigint) => bigint
76
+ = x => addA0(add(pow3(x))(mulA1(x)))
77
+ const addPoint
78
+ : Operator.Reduce<Point>
79
+ = p => q => {
81
80
  if (p === null) {
82
81
  return q
83
82
  }
@@ -119,8 +118,9 @@ export const curve = ({ p, a: [a0, a1], n }) => {
119
118
  }
120
119
  }
121
120
 
122
- /** @type {(a: Point) => (b: Point) => boolean} */
123
- export const eq = a => b => {
121
+ export const eq
122
+ : (a: Point) => (b: Point) => boolean
123
+ = a => b => {
124
124
  if (a === null || b === null) {
125
125
  return a === b
126
126
  }
@@ -131,10 +131,10 @@ export const eq = a => b => {
131
131
 
132
132
  /**
133
133
  * https://neuromancer.sk/std/secg/secp192r1
134
- *
135
- * @type {Init}
136
134
  */
137
- export const secp192r1 = {
135
+ export const secp192r1
136
+ : Init
137
+ = {
138
138
  p: 0xffffffff_ffffffff_ffffffff_fffffffe_ffffffff_ffffffffn,
139
139
  a: [
140
140
  0x64210519_e59c80e7_0fa7e9ab_72243049_feb8deec_c146b9b1n,
@@ -150,10 +150,10 @@ export const secp192r1 = {
150
150
  /**
151
151
  * https://en.bitcoin.it/wiki/Secp256k1
152
152
  * https://neuromancer.sk/std/secg/secp256k1
153
- *
154
- * @type {Init}
155
153
  */
156
- export const secp256k1 = {
154
+ export const secp256k1
155
+ : Init
156
+ = {
157
157
  p: 0xffffffff_ffffffff_ffffffff_ffffffff_ffffffff_ffffffff_fffffffe_fffffc2fn,
158
158
  a: [7n, 0n],
159
159
  g: [
@@ -165,10 +165,10 @@ export const secp256k1 = {
165
165
 
166
166
  /**
167
167
  * https://neuromancer.sk/std/secg/secp256r1
168
- *
169
- * @type { Init }
170
168
  */
171
- export const secp256r1 ={
169
+ export const secp256r1
170
+ : Init
171
+ = {
172
172
  p: 0xffffffff_00000001_00000000_00000000_00000000_ffffffff_ffffffff_ffffffffn,
173
173
  a: [
174
174
  0x5ac635d8_aa3a93e7_b3ebbd55_769886bc_651d06b0_cc53b0f6_3bce3c3e_27d2604bn, //< b
@@ -1,10 +1,11 @@
1
- import * as _ from './module.f.mjs'
1
+ import * as _ from './module.f.ts'
2
2
  const { curve, secp256k1, secp192r1, secp256r1, eq } = _
3
3
 
4
4
  export default {
5
5
  example: () => {
6
- /** @type {_.Init} */
7
- const curveParams = {
6
+ const curveParams
7
+ : _.Init
8
+ = {
8
9
  p: 23n,
9
10
  a: [0n, 1n],
10
11
  g: [1n, 1n],
@@ -17,12 +18,14 @@ export default {
17
18
  const mulPoint = c.mul([1n, 1n])(3n); // Multiply a point by 3
18
19
  },
19
20
  test: () => {
20
- /** @type {(c: _.Init) => void} */
21
- const test_curve = c => {
21
+ const test_curve
22
+ : (c: _.Init) => void
23
+ = c => {
22
24
  const { g } = c
23
25
  const { mul, neg, pf: { abs }, y: yf, nf: { p: n } } = curve(c)
24
- /** @type {(p: _.Point) => void} */
25
- const point_check = p => {
26
+ const point_check
27
+ : (p: _.Point) => void
28
+ = p => {
26
29
  if (p === null) { throw 'p === null' }
27
30
  const [x, y] = p
28
31
  const ye = yf(x)
@@ -31,15 +34,17 @@ export default {
31
34
  }
32
35
  point_check(g)
33
36
  point_check(neg(g))
34
- /** @type {(p: _.Point) => void} */
35
- const test_mul = p => {
37
+ const test_mul
38
+ : (p: _.Point) => void
39
+ = p => {
36
40
  if (mul(p)(0n) !== null) { throw 'O' }
37
41
  if (mul(p)(1n) !== p) { throw 'p' }
38
42
  if (mul(p)(n) !== null) { throw 'n' }
39
43
  const pn = neg(p)
40
44
  if (!eq(mul(p)(n - 1n))(pn)) { throw 'n - 1' }
41
- /** @type {(s: bigint) => void} */
42
- const f = s => {
45
+ const f
46
+ : (s: bigint) => void
47
+ = s => {
43
48
  const r = mul(p)(s)
44
49
  point_check(r)
45
50
  const rn = mul(pn)(s)
@@ -1,29 +1,30 @@
1
- // @ts-self-types="./module.f.d.mts"
2
- import * as array from '../../types/array/module.f.mjs'
1
+ import * as array from '../../types/array/module.f.ts'
3
2
 
4
- /**
5
- * @typedef {{
6
- * readonly f: (i: number) => number
7
- * readonly length: number
8
- * }} HashInput
9
- */
3
+ type HashInput = {
4
+ readonly f: (i: number) => number
5
+ readonly length: number
6
+ }
10
7
 
11
- /** @typedef {array.Array8<number>} Hash8 */
8
+ type Hash8 = array.Array8<number>
12
9
 
13
- /** @typedef {array.Array16<number>} Array16 */
10
+ type Array16 = array.Array16<number>
14
11
 
15
- /** @type {(input: number) => (pos: number) => number} */
16
- const appendOneWithZeros = input => pos => (input >> pos << pos) | (1 << pos)
12
+ const appendOneWithZeros
13
+ : (input: number) => (pos: number) => number
14
+ = input => pos => (input >> pos << pos) | (1 << pos)
17
15
 
18
- /** @type {(input: number) => (pos: number) => number} */
19
- const mod = a => b => (a % b + b) % b
16
+ const mod
17
+ : (input: number) => (pos: number) => number
18
+ = a => b => (a % b + b) % b
20
19
 
21
- /** @type {(input: readonly number[]) => (bits: number) => HashInput} */
22
- export const padding = input => bitsCount => {
20
+ export const padding
21
+ : (input: readonly number[]) => (bits: number) => HashInput
22
+ = input => bitsCount => {
23
23
  const appendBlockIndex = (bitsCount / 32) | 0
24
24
  const length = (bitsCount + mod(447 - bitsCount)(512) + 65) / 32
25
- /** @type {(i: number) => number} */
26
- const f = i => {
25
+ const f
26
+ : (i: number) => number
27
+ = i => {
27
28
  if (i < appendBlockIndex) { return input[i] }
28
29
  if (i === appendBlockIndex) {
29
30
  return appendBlockIndex >= input.length ? 0x8000_0000 : appendOneWithZeros(input[appendBlockIndex])(31 - bitsCount % 32)
@@ -35,23 +36,28 @@ export const padding = input => bitsCount => {
35
36
  return ({ f, length })
36
37
  }
37
38
 
38
- /** @type {(d: number) => (n: number) => number} */
39
- const rotr = d => {
39
+ const rotr
40
+ : (d: number) => (n: number) => number
41
+ = d => {
40
42
  const r = 32 - d
41
43
  return n => n >>> d | n << r
42
44
  }
43
45
 
44
- /** @type {(x: number) => (y: number) => (z: number) => number} */
45
- const ch = x => y => z => x & y ^ ~x & z
46
+ const ch
47
+ : (x: number) => (y: number) => (z: number) => number
48
+ = x => y => z => x & y ^ ~x & z
46
49
 
47
- /** @type {(x: number) => (y: number) => (z: number) => number} */
48
- const maj = x => y => z => x & y ^ x & z ^ y & z
50
+ const maj
51
+ : (x: number) => (y: number) => (z: number) => number
52
+ = x => y => z => x & y ^ x & z ^ y & z
49
53
 
50
- /** @type {(d: number) => (n: number) => number} */
51
- const shr = d => n => n >>> d
54
+ const shr
55
+ : (d: number) => (n: number) => number
56
+ = d => n => n >>> d
52
57
 
53
- /** @type {(a: number) => (b: number) => (c: number) => (x: number) => number} */
54
- const bigSigma = a => b => c => {
58
+ const bigSigma
59
+ : (a: number) => (b: number) => (c: number) => (x: number) => number
60
+ = a => b => c => {
55
61
  const ra = rotr(a)
56
62
  const rb = rotr(b)
57
63
  const rc = rotr(c)
@@ -62,8 +68,9 @@ const bigSigma0 = bigSigma(2)(13)(22)
62
68
 
63
69
  const bigSigma1 = bigSigma(6)(11)(25)
64
70
 
65
- /** @type {(a: number) => (b: number) => (c: number) => (x: number) => number} */
66
- const smallSigma = a => b => c => {
71
+ const smallSigma
72
+ : (a: number) => (b: number) => (c: number) => (x: number) => number
73
+ = a => b => c => {
67
74
  const ra = rotr(a)
68
75
  const rb = rotr(b)
69
76
  const sc = shr(c)
@@ -74,11 +81,13 @@ const smallSigma0 = smallSigma(7)(18)(3)
74
81
 
75
82
  const smallSigma1 = smallSigma(17)(19)(10)
76
83
 
77
- /** @type {(a: array.Array4<number>) => number} */
78
- const wi = ([a0, a1, a2, a3]) => (smallSigma1(a0) + a1 + smallSigma0(a2) + a3) | 0
84
+ const wi
85
+ : (a: array.Array4<number>) => number
86
+ = ([a0, a1, a2, a3]) => (smallSigma1(a0) + a1 + smallSigma0(a2) + a3) | 0
79
87
 
80
- /** @type {(w: Array16) => Array16} */
81
- const nextW = ([w0, w1, w2, w3, w4, w5, w6, w7, w8, w9, wA, wB, wC, wD, wE, wF]) => {
88
+ const nextW
89
+ : (w: Array16) => Array16
90
+ = ([w0, w1, w2, w3, w4, w5, w6, w7, w8, w9, wA, wB, wC, wD, wE, wF]) => {
82
91
  w0 = wi([wE, w9, w1, w0])
83
92
  w1 = wi([wF, wA, w2, w1])
84
93
  w2 = wi([w0, wB, w3, w2])
@@ -117,8 +126,9 @@ const k = [
117
126
  ],
118
127
  ];
119
128
 
120
- /** @type {(init: Hash8) => (data: Array16) => Hash8} */
121
- const compress = ([a0, b0, c0, d0, e0, f0, g0, h0]) => data => {
129
+ const compress
130
+ : (init: Hash8) => (data: Array16) => Hash8
131
+ = ([a0, b0, c0, d0, e0, f0, g0, h0]) => data => {
122
132
  let w = data
123
133
 
124
134
  let a = a0
@@ -162,8 +172,9 @@ const compress = ([a0, b0, c0, d0, e0, f0, g0, h0]) => data => {
162
172
  ]
163
173
  }
164
174
 
165
- /** @type {(init: Hash8) => (input: readonly number[]) => (bitsCount: number) => Hash8} */
166
- const compute = init => input => bitsCount => {
175
+ const compute
176
+ : (init: Hash8) => (input: readonly number[]) => (bitsCount: number) => Hash8
177
+ = init => input => bitsCount => {
167
178
  const { f, length } = padding(input)(bitsCount)
168
179
 
169
180
  let result = init
@@ -179,17 +190,21 @@ const compute = init => input => bitsCount => {
179
190
  return result
180
191
  }
181
192
 
182
- /** @type {Hash8} */
183
- const init256 = [0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19]
193
+ const init256
194
+ : Hash8
195
+ = [0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19]
184
196
 
185
- /** @type {(input: readonly number[]) => (bitsCount: number) => Hash8} */
186
- export const computeSha256 = compute(init256)
197
+ export const computeSha256
198
+ : (input: readonly number[]) => (bitsCount: number) => Hash8
199
+ = compute(init256)
187
200
 
188
- /** @type {Hash8} */
189
- const init224 = [0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4]
201
+ const init224
202
+ : Hash8
203
+ = [0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4]
190
204
 
191
- /** @type {(input: readonly number[]) => (bitsCount: number) => Hash8} */
192
- export const computeSha224 = compute(init224)
205
+ export const computeSha224
206
+ : (input: readonly number[]) => (bitsCount: number) => Hash8
207
+ = compute(init224)
193
208
 
194
209
  export const compress256 = compress(init256)
195
210
 
@@ -1,16 +1,19 @@
1
- import * as _ from './module.f.mjs'
2
- import * as json from '../../json/module.f.mjs'
3
- import * as o from '../../types/object/module.f.mjs'
1
+ import * as _ from './module.f.ts'
2
+ import * as json from '../../json/module.f.ts'
3
+ import * as o from '../../types/object/module.f.ts'
4
4
  const { sort } = o
5
5
 
6
- /** @type {(a: number) => number} */
7
- const toU32 = x => (x + 0x1_0000_0000) % 0x1_0000_0000
6
+ const toU32
7
+ : (a: number) => number
8
+ = x => (x + 0x1_0000_0000) % 0x1_0000_0000
8
9
 
9
- /** @type {(a: number) => string} */
10
- const toHexString = x => toU32(x).toString(16).padStart(8, '0')
10
+ const toHexString
11
+ : (a: number) => string
12
+ = x => toU32(x).toString(16).padStart(8, '0')
11
13
 
12
- /** @type {(a: readonly json.Unknown[]) => string} */
13
- const stringify = a => json.stringify(sort)(a)
14
+ const stringify
15
+ : (a: readonly json.Unknown[]) => string
16
+ = a => json.stringify(sort)(a)
14
17
 
15
18
  // {
16
19
  // const result = _.padding([])(0)
package/deno.json ADDED
@@ -0,0 +1,71 @@
1
+ {
2
+ "name": "@functionalscript/functionalscript",
3
+ "version": "0.3.0",
4
+ "license": "AGPL-3.0-only",
5
+ "exports": {
6
+ "./com/cpp": "./out/com/cpp/module.f.ts",
7
+ "./com/cs": "./out/com/cs/module.f.ts",
8
+ "./com/rust": "./out/com/rust/module.f.ts",
9
+ "./com/types": "./out/com/types/module.f.ts",
10
+ "./commonjs/build": "./out/commonjs/build/module.f.ts",
11
+ "./commonjs": "./out/commonjs/module.f.ts",
12
+ "./commonjs/module/function": "./out/commonjs/module/function/module.f.ts",
13
+ "./commonjs/module": "./out/commonjs/module/module.f.ts",
14
+ "./commonjs/package/dependencies": "./out/commonjs/package/dependencies/module.f.ts",
15
+ "./commonjs/package": "./out/commonjs/package/module.f.ts",
16
+ "./commonjs/path": "./out/commonjs/path/module.f.ts",
17
+ "./crypto/prime_field": "./out/crypto/prime_field/module.f.ts",
18
+ "./crypto/secp": "./out/crypto/secp/module.f.ts",
19
+ "./crypto/sha2": "./out/crypto/sha2/module.f.ts",
20
+ "./dev": "./out/dev/module.f.ts",
21
+ "./dev/test": "./out/dev/test/module.f.ts",
22
+ "./djs": "./out/djs/module.f.ts",
23
+ "./djs/parser": "./out/djs/parser/module.f.ts",
24
+ "./djs/serializer": "./out/djs/serializer/module.f.ts",
25
+ "./djs/tokenizer": "./out/djs/tokenizer/module.f.ts",
26
+ "./fsc": "./out/fsc/module.f.ts",
27
+ "./fsm": "./out/fsm/module.f.ts",
28
+ "./html": "./out/html/module.f.ts",
29
+ "./js/tokenizer": "./out/js/tokenizer/module.f.ts",
30
+ "./json": "./out/json/module.f.ts",
31
+ "./json/parser": "./out/json/parser/module.f.ts",
32
+ "./json/serializer": "./out/json/serializer/module.f.ts",
33
+ "./json/tokenizer": "./out/json/tokenizer/module.f.ts",
34
+ "./nodejs/version": "./out/nodejs/version/module.f.ts",
35
+ "./text/ascii": "./out/text/ascii/module.f.ts",
36
+ "./text": "./out/text/module.f.ts",
37
+ "./text/sgr": "./out/text/sgr/module.f.ts",
38
+ "./text/utf16": "./out/text/utf16/module.f.ts",
39
+ "./text/utf8": "./out/text/utf8/module.f.ts",
40
+ "./types/array": "./out/types/array/module.f.ts",
41
+ "./types/bigfloat": "./out/types/bigfloat/module.f.ts",
42
+ "./types/bigint": "./out/types/bigint/module.f.ts",
43
+ "./types/bit_vec": "./out/types/bit_vec/module.f.ts",
44
+ "./types/btree/find": "./out/types/btree/find/module.f.ts",
45
+ "./types/btree": "./out/types/btree/module.f.ts",
46
+ "./types/btree/remove": "./out/types/btree/remove/module.f.ts",
47
+ "./types/btree/set": "./out/types/btree/set/module.f.ts",
48
+ "./types/btree/types": "./out/types/btree/types/module.f.ts",
49
+ "./types/byte_set": "./out/types/byte_set/module.f.ts",
50
+ "./types/function/compare": "./out/types/function/compare/module.f.ts",
51
+ "./types/function": "./out/types/function/module.f.ts",
52
+ "./types/function/operator": "./out/types/function/operator/module.f.ts",
53
+ "./types/list": "./out/types/list/module.f.ts",
54
+ "./types/map": "./out/types/map/module.f.ts",
55
+ "./types/nibble_set": "./out/types/nibble_set/module.f.ts",
56
+ "./types/nullable": "./out/types/nullable/module.f.ts",
57
+ "./types/number": "./out/types/number/module.f.ts",
58
+ "./types/object": "./out/types/object/module.f.ts",
59
+ "./types/range": "./out/types/range/module.f.ts",
60
+ "./types/range_map": "./out/types/range_map/module.f.ts",
61
+ "./types/result": "./out/types/result/module.f.ts",
62
+ "./types/sorted_list": "./out/types/sorted_list/module.f.ts",
63
+ "./types/sorted_set": "./out/types/sorted_set/module.f.ts",
64
+ "./types/string": "./out/types/string/module.f.ts",
65
+ "./types/string_set": "./out/types/string_set/module.f.ts"
66
+ },
67
+ "tasks": {
68
+ "doc": "deno doc --html **/module.f.ts",
69
+ "test": "deno run --quiet --allow-read --allow-env --allow-net ./dev/test.ts"
70
+ }
71
+ }
package/dev/README.md ADDED
@@ -0,0 +1,8 @@
1
+ # Test Framework
2
+
3
+ The main principle is that tests don't depend on test framework. We use conventions instead.
4
+
5
+ ## Conventions
6
+
7
+ - file name 'test.f.*',
8
+ - parsing default exports.
package/dev/index.ts ADDED
@@ -0,0 +1,3 @@
1
+ import { index } from "./module.ts"
2
+
3
+ index()
@@ -1,3 +1 @@
1
- // @ts-self-types="./module.f.d.mts"
2
-
3
1
  export const todo = () => { throw 'not implemented' }