functionalscript 0.2.6 → 0.3.1

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 (428) hide show
  1. package/.github/workflows/ci.yml +20 -4
  2. package/CHANGELOG.md +5 -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} +66 -61
  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/module.f.ts +108 -0
  55. package/html/{test.f.mjs → test.f.ts} +10 -7
  56. package/issues/lang/3110-function.md +25 -1
  57. package/issues/{test.f.mjs → test.f.ts} +3 -2
  58. package/js/tokenizer/module.f.ts +882 -0
  59. package/js/tokenizer/{test.f.mjs → test.f.ts} +11 -10
  60. package/json/module.f.ts +94 -0
  61. package/json/parser/{module.f.mjs → module.f.ts} +113 -109
  62. package/json/parser/{test.f.mjs → test.f.ts} +10 -9
  63. package/json/serializer/module.f.ts +70 -0
  64. package/json/serializer/{test.f.mjs → test.f.ts} +3 -3
  65. package/json/{test.f.mjs → test.f.ts} +3 -3
  66. package/json/tokenizer/{module.f.mjs → module.f.ts} +29 -36
  67. package/json/tokenizer/{test.f.mjs → test.f.ts} +9 -8
  68. package/nanvm-lib/src/extension.rs +15 -4
  69. package/nanvm-lib/src/interface.rs +7 -10
  70. package/nanvm-lib/src/lib.rs +3 -3
  71. package/nanvm-lib/src/naive.rs +10 -3
  72. package/nanvm-lib/src/nanenum.rs +5 -1
  73. package/nanvm-lib/tests/{test.f.mjs → test.f.ts} +7 -6
  74. package/nodejs/version/{main.mjs → main.ts} +1 -1
  75. package/nodejs/version/module.f.ts +42 -0
  76. package/nodejs/version/{test.f.mjs → test.f.ts} +11 -12
  77. package/package.json +9 -9
  78. package/text/ascii/{module.f.mjs → module.f.ts} +10 -8
  79. package/text/ascii/{test.f.mjs → test.f.ts} +4 -4
  80. package/text/module.f.ts +30 -0
  81. package/text/sgr/{module.f.mjs → module.f.ts} +3 -5
  82. package/text/{test.f.mjs → test.f.ts} +5 -4
  83. package/text/utf16/module.f.ts +108 -0
  84. package/text/utf16/{test.f.mjs → test.f.ts} +7 -6
  85. package/text/utf8/{module.f.mjs → module.f.ts} +29 -23
  86. package/text/utf8/{test.f.mjs → test.f.ts} +4 -4
  87. package/tsconfig.json +4 -1
  88. package/types/array/module.f.ts +89 -0
  89. package/types/array/{test.f.mjs → test.f.ts} +3 -3
  90. package/types/bigfloat/{module.f.mjs → module.f.ts} +25 -20
  91. package/types/bigfloat/{test.f.mjs → test.f.ts} +1 -1
  92. package/types/bigint/{module.f.mjs → module.f.ts} +29 -28
  93. package/types/bigint/{test.f.mjs → test.f.ts} +2 -2
  94. package/types/bit_vec/{module.f.mjs → module.f.ts} +16 -37
  95. package/types/bit_vec/{test.f.mjs → test.f.ts} +1 -1
  96. package/types/btree/find/module.f.ts +92 -0
  97. package/types/btree/find/{test.f.mjs → test.f.ts} +20 -16
  98. package/types/btree/{module.f.mjs → module.f.ts} +9 -9
  99. package/types/btree/remove/{module.f.mjs → module.f.ts} +43 -53
  100. package/types/btree/remove/{test.f.mjs → test.f.ts} +19 -15
  101. package/types/btree/set/{module.f.mjs → module.f.ts} +17 -20
  102. package/types/btree/set/{test.f.mjs → test.f.ts} +96 -66
  103. package/types/btree/{test.f.mjs → test.f.ts} +34 -26
  104. package/types/btree/types/module.f.ts +27 -0
  105. package/types/byte_set/module.f.ts +70 -0
  106. package/types/byte_set/{test.f.mjs → test.f.ts} +8 -7
  107. package/types/function/compare/module.f.ts +26 -0
  108. package/types/function/compare/{test.f.mjs → test.f.ts} +1 -1
  109. package/types/function/module.f.ts +43 -0
  110. package/types/function/operator/module.f.ts +63 -0
  111. package/types/function/test.f.ts +20 -0
  112. package/types/list/module.f.ts +345 -0
  113. package/types/list/{test.f.mjs → test.f.ts} +30 -24
  114. package/types/map/module.f.ts +65 -0
  115. package/types/map/{test.f.mjs → test.f.ts} +6 -5
  116. package/types/nibble_set/module.f.ts +34 -0
  117. package/types/nibble_set/{test.f.mjs → test.f.ts} +3 -3
  118. package/types/nullable/module.f.ts +9 -0
  119. package/types/nullable/{test.f.mjs → test.f.ts} +2 -2
  120. package/types/number/module.f.ts +16 -0
  121. package/types/number/{test.f.mjs → test.f.ts} +7 -5
  122. package/types/object/module.f.ts +30 -0
  123. package/types/object/{test.f.mjs → test.f.ts} +2 -2
  124. package/types/range/module.f.ts +10 -0
  125. package/types/range/{test.f.mjs → test.f.ts} +1 -1
  126. package/types/range_map/module.f.ts +70 -0
  127. package/types/range_map/{test.f.mjs → test.f.ts} +82 -57
  128. package/types/result/module.f.ts +20 -0
  129. package/types/result/{module.mjs → module.ts} +4 -3
  130. package/types/sorted_list/module.f.ts +83 -0
  131. package/types/sorted_list/{test.f.mjs → test.f.ts} +14 -12
  132. package/types/sorted_set/module.f.ts +36 -0
  133. package/types/sorted_set/{test.f.mjs → test.f.ts} +14 -12
  134. package/types/string/module.f.ts +24 -0
  135. package/types/string/{test.f.mjs → test.f.ts} +2 -2
  136. package/types/string_set/module.f.ts +37 -0
  137. package/types/string_set/{test.f.mjs → test.f.ts} +2 -2
  138. package/com/cpp/testlib.f.mjs +0 -8
  139. package/com/cs/testlib.f.mjs +0 -8
  140. package/com/rust/module.f.mjs +0 -272
  141. package/com/rust/testlib.f.mjs +0 -8
  142. package/com/types/module.f.mjs +0 -67
  143. package/commonjs/build/module.f.mjs +0 -100
  144. package/commonjs/module/function/module.f.mjs +0 -21
  145. package/commonjs/module/module.f.mjs +0 -53
  146. package/commonjs/module.f.mjs +0 -11
  147. package/commonjs/package/dependencies/module.f.mjs +0 -22
  148. package/commonjs/package/module.f.mjs +0 -36
  149. package/dev/index.mjs +0 -3
  150. package/dev/test.mjs +0 -60
  151. package/fsm/module.f.mjs +0 -99
  152. package/html/module.f.mjs +0 -102
  153. package/js/tokenizer/module.f.mjs +0 -872
  154. package/json/module.f.mjs +0 -89
  155. package/json/serializer/module.f.mjs +0 -87
  156. package/jsr.json +0 -66
  157. package/nodejs/version/module.f.mjs +0 -47
  158. package/out/com/cpp/module.f.d.mts +0 -7
  159. package/out/com/cpp/module.f.mjs +0 -130
  160. package/out/com/cpp/test.f.d.mts +0 -2
  161. package/out/com/cpp/test.f.mjs +0 -40
  162. package/out/com/cpp/testlib.f.d.mts +0 -2
  163. package/out/com/cpp/testlib.f.mjs +0 -7
  164. package/out/com/cs/module.f.d.mts +0 -7
  165. package/out/com/cs/module.f.mjs +0 -104
  166. package/out/com/cs/test.f.d.mts +0 -2
  167. package/out/com/cs/test.f.mjs +0 -43
  168. package/out/com/cs/testlib.f.d.mts +0 -2
  169. package/out/com/cs/testlib.f.mjs +0 -7
  170. package/out/com/rust/module.f.d.mts +0 -23
  171. package/out/com/rust/module.f.mjs +0 -224
  172. package/out/com/rust/test.f.d.mts +0 -2
  173. package/out/com/rust/test.f.mjs +0 -123
  174. package/out/com/rust/testlib.f.d.mts +0 -2
  175. package/out/com/rust/testlib.f.mjs +0 -7
  176. package/out/com/test/build.d.mts +0 -1
  177. package/out/com/test/build.f.d.mts +0 -26
  178. package/out/com/test/build.f.mjs +0 -98
  179. package/out/com/test/build.mjs +0 -40
  180. package/out/com/types/module.f.d.mts +0 -23
  181. package/out/com/types/module.f.mjs +0 -51
  182. package/out/com/types/testlib.f.d.mts +0 -44
  183. package/out/com/types/testlib.f.mjs +0 -30
  184. package/out/commonjs/build/module.f.d.mts +0 -20
  185. package/out/commonjs/build/module.f.mjs +0 -107
  186. package/out/commonjs/build/test.f.d.mts +0 -3
  187. package/out/commonjs/build/test.f.mjs +0 -102
  188. package/out/commonjs/module/function/module.f.d.mts +0 -5
  189. package/out/commonjs/module/function/module.f.mjs +0 -15
  190. package/out/commonjs/module/module.f.d.mts +0 -52
  191. package/out/commonjs/module/module.f.mjs +0 -48
  192. package/out/commonjs/module.d.mts +0 -3
  193. package/out/commonjs/module.f.d.mts +0 -2
  194. package/out/commonjs/module.f.mjs +0 -10
  195. package/out/commonjs/module.mjs +0 -26
  196. package/out/commonjs/package/dependencies/module.f.d.mts +0 -6
  197. package/out/commonjs/package/dependencies/module.f.mjs +0 -21
  198. package/out/commonjs/package/dependencies/test.f.d.mts +0 -2
  199. package/out/commonjs/package/dependencies/test.f.mjs +0 -15
  200. package/out/commonjs/package/module.f.d.mts +0 -21
  201. package/out/commonjs/package/module.f.mjs +0 -40
  202. package/out/commonjs/package/test.f.d.mts +0 -2
  203. package/out/commonjs/package/test.f.mjs +0 -27
  204. package/out/commonjs/path/module.f.d.mts +0 -60
  205. package/out/commonjs/path/module.f.mjs +0 -171
  206. package/out/commonjs/path/test.f.d.mts +0 -25
  207. package/out/commonjs/path/test.f.mjs +0 -231
  208. package/out/commonjs/test.d.mts +0 -8
  209. package/out/commonjs/test.mjs +0 -87
  210. package/out/crypto/prime_field/module.f.d.mts +0 -67
  211. package/out/crypto/prime_field/module.f.mjs +0 -110
  212. package/out/crypto/prime_field/test.f.d.mts +0 -13
  213. package/out/crypto/prime_field/test.f.mjs +0 -152
  214. package/out/crypto/secp/module.f.d.mts +0 -110
  215. package/out/crypto/secp/module.f.mjs +0 -173
  216. package/out/crypto/secp/test.f.d.mts +0 -5
  217. package/out/crypto/secp/test.f.mjs +0 -78
  218. package/out/crypto/sha2/module.f.d.mts +0 -15
  219. package/out/crypto/sha2/module.f.mjs +0 -172
  220. package/out/crypto/sha2/test.f.d.mts +0 -10
  221. package/out/crypto/sha2/test.f.mjs +0 -86
  222. package/out/dev/index.d.mts +0 -1
  223. package/out/dev/index.mjs +0 -2
  224. package/out/dev/module.d.mts +0 -26
  225. package/out/dev/module.f.d.mts +0 -1
  226. package/out/dev/module.f.mjs +0 -2
  227. package/out/dev/module.mjs +0 -167
  228. package/out/dev/test/module.f.d.mts +0 -25
  229. package/out/dev/test/module.f.mjs +0 -134
  230. package/out/dev/test.d.mts +0 -3
  231. package/out/dev/test.f.d.mts +0 -9
  232. package/out/dev/test.f.mjs +0 -58
  233. package/out/dev/test.mjs +0 -52
  234. package/out/djs/module.f.d.mts +0 -20
  235. package/out/djs/module.f.mjs +0 -79
  236. package/out/djs/parser/module.f.d.mts +0 -56
  237. package/out/djs/parser/module.f.mjs +0 -448
  238. package/out/djs/parser/test.f.d.mts +0 -13
  239. package/out/djs/parser/test.f.mjs +0 -569
  240. package/out/djs/test.f.d.mts +0 -12
  241. package/out/djs/test.f.mjs +0 -84
  242. package/out/djs/tokenizer/module.f.d.mts +0 -13
  243. package/out/djs/tokenizer/module.f.mjs +0 -91
  244. package/out/djs/tokenizer/test.f.d.mts +0 -7
  245. package/out/djs/tokenizer/test.f.mjs +0 -530
  246. package/out/fsc/module.f.d.mts +0 -7
  247. package/out/fsc/module.f.mjs +0 -105
  248. package/out/fsc/test.f.d.mts +0 -4
  249. package/out/fsc/test.f.mjs +0 -19
  250. package/out/fsm/module.f.d.mts +0 -14
  251. package/out/fsm/module.f.mjs +0 -80
  252. package/out/fsm/test.f.d.mts +0 -5
  253. package/out/fsm/test.f.mjs +0 -138
  254. package/out/html/module.f.d.mts +0 -17
  255. package/out/html/module.f.mjs +0 -80
  256. package/out/html/test.f.d.mts +0 -10
  257. package/out/html/test.f.mjs +0 -45
  258. package/out/issues/test.f.d.mts +0 -16
  259. package/out/issues/test.f.mjs +0 -66
  260. package/out/js/tokenizer/module.f.d.mts +0 -163
  261. package/out/js/tokenizer/module.f.mjs +0 -729
  262. package/out/js/tokenizer/test.f.d.mts +0 -9
  263. package/out/js/tokenizer/test.f.mjs +0 -906
  264. package/out/json/module.f.d.mts +0 -33
  265. package/out/json/module.f.mjs +0 -89
  266. package/out/json/parser/module.f.d.mts +0 -32
  267. package/out/json/parser/module.f.mjs +0 -224
  268. package/out/json/parser/test.f.d.mts +0 -5
  269. package/out/json/parser/test.f.mjs +0 -329
  270. package/out/json/serializer/module.f.d.mts +0 -36
  271. package/out/json/serializer/module.f.mjs +0 -67
  272. package/out/json/serializer/test.f.d.mts +0 -8
  273. package/out/json/serializer/test.f.mjs +0 -87
  274. package/out/json/test.f.d.mts +0 -8
  275. package/out/json/test.f.mjs +0 -61
  276. package/out/json/tokenizer/module.f.d.mts +0 -13
  277. package/out/json/tokenizer/module.f.mjs +0 -78
  278. package/out/json/tokenizer/test.f.d.mts +0 -6
  279. package/out/json/tokenizer/test.f.mjs +0 -420
  280. package/out/nanvm-lib/tests/test.f.d.mts +0 -36
  281. package/out/nanvm-lib/tests/test.f.mjs +0 -87
  282. package/out/nodejs/version/main.d.mts +0 -1
  283. package/out/nodejs/version/main.mjs +0 -3
  284. package/out/nodejs/version/module.f.d.mts +0 -12
  285. package/out/nodejs/version/module.f.mjs +0 -34
  286. package/out/nodejs/version/test.f.d.mts +0 -2
  287. package/out/nodejs/version/test.f.mjs +0 -97
  288. package/out/text/ascii/module.f.d.mts +0 -70
  289. package/out/text/ascii/module.f.mjs +0 -154
  290. package/out/text/ascii/test.f.d.mts +0 -4
  291. package/out/text/ascii/test.f.mjs +0 -14
  292. package/out/text/module.f.d.mts +0 -13
  293. package/out/text/module.f.mjs +0 -19
  294. package/out/text/sgr/module.f.d.mts +0 -12
  295. package/out/text/sgr/module.f.mjs +0 -17
  296. package/out/text/test.f.d.mts +0 -2
  297. package/out/text/test.f.mjs +0 -19
  298. package/out/text/utf16/module.f.d.mts +0 -12
  299. package/out/text/utf16/module.f.mjs +0 -86
  300. package/out/text/utf16/test.f.d.mts +0 -6
  301. package/out/text/utf16/test.f.mjs +0 -145
  302. package/out/text/utf8/module.f.d.mts +0 -10
  303. package/out/text/utf8/module.f.mjs +0 -126
  304. package/out/text/utf8/test.f.d.mts +0 -6
  305. package/out/text/utf8/test.f.mjs +0 -175
  306. package/out/types/array/module.f.d.mts +0 -31
  307. package/out/types/array/module.f.mjs +0 -95
  308. package/out/types/array/test.f.d.mts +0 -10
  309. package/out/types/array/test.f.mjs +0 -116
  310. package/out/types/bigfloat/module.f.d.mts +0 -6
  311. package/out/types/bigfloat/module.f.mjs +0 -77
  312. package/out/types/bigfloat/test.f.d.mts +0 -6
  313. package/out/types/bigfloat/test.f.mjs +0 -349
  314. package/out/types/bigint/module.f.d.mts +0 -29
  315. package/out/types/bigint/module.f.mjs +0 -114
  316. package/out/types/bigint/test.f.d.mts +0 -16
  317. package/out/types/bigint/test.f.mjs +0 -199
  318. package/out/types/bit_vec/module.f.d.mts +0 -158
  319. package/out/types/bit_vec/module.f.mjs +0 -194
  320. package/out/types/bit_vec/test.f.d.mts +0 -23
  321. package/out/types/bit_vec/test.f.mjs +0 -210
  322. package/out/types/btree/find/module.f.d.mts +0 -36
  323. package/out/types/btree/find/module.f.mjs +0 -137
  324. package/out/types/btree/find/test.f.d.mts +0 -2
  325. package/out/types/btree/find/test.f.mjs +0 -156
  326. package/out/types/btree/module.f.d.mts +0 -5
  327. package/out/types/btree/module.f.mjs +0 -34
  328. package/out/types/btree/remove/module.f.d.mts +0 -14
  329. package/out/types/btree/remove/module.f.mjs +0 -209
  330. package/out/types/btree/remove/test.f.d.mts +0 -7
  331. package/out/types/btree/remove/test.f.mjs +0 -638
  332. package/out/types/btree/set/module.f.d.mts +0 -5
  333. package/out/types/btree/set/module.f.mjs +0 -114
  334. package/out/types/btree/set/test.f.d.mts +0 -2
  335. package/out/types/btree/set/test.f.mjs +0 -390
  336. package/out/types/btree/test.f.d.mts +0 -13
  337. package/out/types/btree/test.f.mjs +0 -83
  338. package/out/types/btree/types/module.f.d.mts +0 -14
  339. package/out/types/btree/types/module.f.mjs +0 -50
  340. package/out/types/byte_set/module.f.d.mts +0 -25
  341. package/out/types/byte_set/module.f.mjs +0 -42
  342. package/out/types/byte_set/test.f.d.mts +0 -13
  343. package/out/types/byte_set/test.f.mjs +0 -123
  344. package/out/types/function/compare/module.f.d.mts +0 -23
  345. package/out/types/function/compare/module.f.mjs +0 -22
  346. package/out/types/function/compare/test.f.d.mts +0 -2
  347. package/out/types/function/compare/test.f.mjs +0 -8
  348. package/out/types/function/module.f.d.mts +0 -51
  349. package/out/types/function/module.f.mjs +0 -44
  350. package/out/types/function/operator/module.f.d.mts +0 -60
  351. package/out/types/function/operator/module.f.mjs +0 -60
  352. package/out/types/function/test.f.d.mts +0 -2
  353. package/out/types/function/test.f.mjs +0 -15
  354. package/out/types/list/module.f.d.mts +0 -82
  355. package/out/types/list/module.f.mjs +0 -269
  356. package/out/types/list/test.f.d.mts +0 -38
  357. package/out/types/list/test.f.mjs +0 -401
  358. package/out/types/map/module.f.d.mts +0 -21
  359. package/out/types/map/module.f.mjs +0 -54
  360. package/out/types/map/test.f.d.mts +0 -5
  361. package/out/types/map/test.f.mjs +0 -115
  362. package/out/types/nibble_set/module.f.d.mts +0 -16
  363. package/out/types/nibble_set/module.f.mjs +0 -19
  364. package/out/types/nibble_set/test.f.d.mts +0 -13
  365. package/out/types/nibble_set/test.f.mjs +0 -90
  366. package/out/types/nullable/module.f.d.mts +0 -9
  367. package/out/types/nullable/module.f.mjs +0 -9
  368. package/out/types/nullable/test.f.d.mts +0 -2
  369. package/out/types/nullable/test.f.mjs +0 -12
  370. package/out/types/number/module.f.d.mts +0 -7
  371. package/out/types/number/module.f.mjs +0 -12
  372. package/out/types/number/test.f.d.mts +0 -11
  373. package/out/types/number/test.f.mjs +0 -126
  374. package/out/types/object/module.f.d.mts +0 -22
  375. package/out/types/object/module.f.mjs +0 -27
  376. package/out/types/object/test.f.d.mts +0 -5
  377. package/out/types/object/test.f.mjs +0 -17
  378. package/out/types/range/module.f.d.mts +0 -6
  379. package/out/types/range/module.f.mjs +0 -6
  380. package/out/types/range/test.f.d.mts +0 -2
  381. package/out/types/range/test.f.mjs +0 -18
  382. package/out/types/range_map/module.f.d.mts +0 -19
  383. package/out/types/range_map/module.f.mjs +0 -84
  384. package/out/types/range_map/test.f.d.mts +0 -6
  385. package/out/types/range_map/test.f.mjs +0 -201
  386. package/out/types/result/module.d.mts +0 -7
  387. package/out/types/result/module.f.d.mts +0 -22
  388. package/out/types/result/module.f.mjs +0 -25
  389. package/out/types/result/module.mjs +0 -16
  390. package/out/types/sorted_list/module.f.d.mts +0 -53
  391. package/out/types/sorted_list/module.f.mjs +0 -102
  392. package/out/types/sorted_list/test.f.d.mts +0 -5
  393. package/out/types/sorted_list/test.f.mjs +0 -66
  394. package/out/types/sorted_set/module.f.d.mts +0 -19
  395. package/out/types/sorted_set/module.f.mjs +0 -29
  396. package/out/types/sorted_set/test.f.d.mts +0 -6
  397. package/out/types/sorted_set/test.f.mjs +0 -80
  398. package/out/types/string/module.f.d.mts +0 -9
  399. package/out/types/string/module.f.mjs +0 -17
  400. package/out/types/string/test.f.d.mts +0 -15
  401. package/out/types/string/test.f.mjs +0 -58
  402. package/out/types/string_set/module.f.d.mts +0 -13
  403. package/out/types/string_set/module.f.mjs +0 -29
  404. package/out/types/string_set/test.f.d.mts +0 -5
  405. package/out/types/string_set/test.f.mjs +0 -65
  406. package/text/module.f.mjs +0 -27
  407. package/text/utf16/module.f.mjs +0 -96
  408. package/types/array/module.f.mjs +0 -119
  409. package/types/btree/find/module.f.mjs +0 -125
  410. package/types/btree/types/module.f.mjs +0 -64
  411. package/types/byte_set/module.f.mjs +0 -61
  412. package/types/function/compare/module.f.mjs +0 -29
  413. package/types/function/module.f.mjs +0 -50
  414. package/types/function/operator/module.f.mjs +0 -78
  415. package/types/function/test.f.mjs +0 -17
  416. package/types/list/module.f.mjs +0 -320
  417. package/types/map/module.f.mjs +0 -67
  418. package/types/nibble_set/module.f.mjs +0 -28
  419. package/types/nullable/module.f.mjs +0 -11
  420. package/types/number/module.f.mjs +0 -16
  421. package/types/object/module.f.mjs +0 -33
  422. package/types/range/module.f.mjs +0 -8
  423. package/types/range_map/module.f.mjs +0 -84
  424. package/types/result/module.f.mjs +0 -28
  425. package/types/sorted_list/module.f.mjs +0 -107
  426. package/types/sorted_set/module.f.mjs +0 -38
  427. package/types/string/module.f.mjs +0 -22
  428. 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.1",
4
+ "license": "AGPL-3.0-only",
5
+ "exports": {
6
+ "./com/cpp": "./com/cpp/module.f.ts",
7
+ "./com/cs": "./com/cs/module.f.ts",
8
+ "./com/rust": "./com/rust/module.f.ts",
9
+ "./com/types": "./com/types/module.f.ts",
10
+ "./commonjs/build": "./commonjs/build/module.f.ts",
11
+ "./commonjs": "./commonjs/module.f.ts",
12
+ "./commonjs/module/function": "./commonjs/module/function/module.f.ts",
13
+ "./commonjs/module": "./commonjs/module/module.f.ts",
14
+ "./commonjs/package/dependencies": "./commonjs/package/dependencies/module.f.ts",
15
+ "./commonjs/package": "./commonjs/package/module.f.ts",
16
+ "./commonjs/path": "./commonjs/path/module.f.ts",
17
+ "./crypto/prime_field": "./crypto/prime_field/module.f.ts",
18
+ "./crypto/secp": "./crypto/secp/module.f.ts",
19
+ "./crypto/sha2": "./crypto/sha2/module.f.ts",
20
+ "./dev": "./dev/module.f.ts",
21
+ "./dev/test": "./dev/test/module.f.ts",
22
+ "./djs": "./djs/module.f.ts",
23
+ "./djs/parser": "./djs/parser/module.f.ts",
24
+ "./djs/serializer": "./djs/serializer/module.f.ts",
25
+ "./djs/tokenizer": "./djs/tokenizer/module.f.ts",
26
+ "./fsc": "./fsc/module.f.ts",
27
+ "./fsm": "./fsm/module.f.ts",
28
+ "./html": "./html/module.f.ts",
29
+ "./js/tokenizer": "./js/tokenizer/module.f.ts",
30
+ "./json": "./json/module.f.ts",
31
+ "./json/parser": "./json/parser/module.f.ts",
32
+ "./json/serializer": "./json/serializer/module.f.ts",
33
+ "./json/tokenizer": "./json/tokenizer/module.f.ts",
34
+ "./nodejs/version": "./nodejs/version/module.f.ts",
35
+ "./text/ascii": "./text/ascii/module.f.ts",
36
+ "./text": "./text/module.f.ts",
37
+ "./text/sgr": "./text/sgr/module.f.ts",
38
+ "./text/utf16": "./text/utf16/module.f.ts",
39
+ "./text/utf8": "./text/utf8/module.f.ts",
40
+ "./types/array": "./types/array/module.f.ts",
41
+ "./types/bigfloat": "./types/bigfloat/module.f.ts",
42
+ "./types/bigint": "./types/bigint/module.f.ts",
43
+ "./types/bit_vec": "./types/bit_vec/module.f.ts",
44
+ "./types/btree/find": "./types/btree/find/module.f.ts",
45
+ "./types/btree": "./types/btree/module.f.ts",
46
+ "./types/btree/remove": "./types/btree/remove/module.f.ts",
47
+ "./types/btree/set": "./types/btree/set/module.f.ts",
48
+ "./types/btree/types": "./types/btree/types/module.f.ts",
49
+ "./types/byte_set": "./types/byte_set/module.f.ts",
50
+ "./types/function/compare": "./types/function/compare/module.f.ts",
51
+ "./types/function": "./types/function/module.f.ts",
52
+ "./types/function/operator": "./types/function/operator/module.f.ts",
53
+ "./types/list": "./types/list/module.f.ts",
54
+ "./types/map": "./types/map/module.f.ts",
55
+ "./types/nibble_set": "./types/nibble_set/module.f.ts",
56
+ "./types/nullable": "./types/nullable/module.f.ts",
57
+ "./types/number": "./types/number/module.f.ts",
58
+ "./types/object": "./types/object/module.f.ts",
59
+ "./types/range": "./types/range/module.f.ts",
60
+ "./types/range_map": "./types/range_map/module.f.ts",
61
+ "./types/result": "./types/result/module.f.ts",
62
+ "./types/sorted_list": "./types/sorted_list/module.f.ts",
63
+ "./types/sorted_set": "./types/sorted_set/module.f.ts",
64
+ "./types/string": "./types/string/module.f.ts",
65
+ "./types/string_set": "./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' }