functionalscript 0.3.3 → 0.3.5

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 (457) hide show
  1. package/com/cpp/module.f.d.ts +10 -0
  2. package/com/cpp/module.f.js +107 -0
  3. package/com/cpp/test.f.d.ts +2 -0
  4. package/com/cpp/{test.f.ts → test.f.js} +9 -11
  5. package/com/cpp/testlib.f.d.ts +2 -0
  6. package/com/cpp/testlib.f.js +5 -0
  7. package/com/cs/module.f.d.ts +12 -0
  8. package/com/cs/module.f.js +80 -0
  9. package/com/cs/test.f.d.ts +2 -0
  10. package/com/cs/{test.f.ts → test.f.js} +9 -11
  11. package/com/cs/testlib.f.d.ts +2 -0
  12. package/com/cs/testlib.f.js +5 -0
  13. package/com/rust/module.f.d.ts +15 -0
  14. package/com/rust/module.f.js +169 -0
  15. package/com/rust/test.f.d.ts +2 -0
  16. package/com/rust/{test.f.ts → test.f.js} +7 -7
  17. package/com/rust/testlib.f.d.ts +2 -0
  18. package/com/rust/testlib.f.js +5 -0
  19. package/com/test/build.f.d.ts +20 -0
  20. package/com/test/build.f.js +58 -0
  21. package/com/types/module.f.d.ts +28 -0
  22. package/com/types/module.f.js +8 -0
  23. package/com/types/testlib.f.d.ts +44 -0
  24. package/com/types/{testlib.f.ts → testlib.f.js} +2 -3
  25. package/commonjs/build/module.f.d.ts +6 -0
  26. package/commonjs/build/module.f.js +69 -0
  27. package/commonjs/build/test.f.d.ts +2 -0
  28. package/commonjs/build/test.f.js +96 -0
  29. package/commonjs/module/function/{module.f.ts → module.f.d.ts} +5 -10
  30. package/commonjs/module/function/module.f.js +4 -0
  31. package/commonjs/module/module.f.d.ts +18 -0
  32. package/commonjs/module/module.f.js +12 -0
  33. package/commonjs/module.f.d.ts +6 -0
  34. package/commonjs/module.f.js +1 -0
  35. package/commonjs/package/dependencies/module.f.d.ts +7 -0
  36. package/commonjs/package/dependencies/module.f.js +13 -0
  37. package/commonjs/package/dependencies/test.f.d.ts +2 -0
  38. package/commonjs/package/dependencies/test.f.js +15 -0
  39. package/commonjs/package/module.f.d.ts +17 -0
  40. package/commonjs/package/module.f.js +18 -0
  41. package/commonjs/package/test.f.d.ts +2 -0
  42. package/commonjs/package/test.f.js +27 -0
  43. package/commonjs/path/module.f.d.ts +24 -0
  44. package/commonjs/path/module.f.js +114 -0
  45. package/commonjs/path/test.f.d.ts +25 -0
  46. package/commonjs/path/{test.f.ts → test.f.js} +123 -89
  47. package/crypto/prime_field/module.f.d.ts +43 -0
  48. package/crypto/prime_field/module.f.js +78 -0
  49. package/crypto/prime_field/test.f.d.ts +13 -0
  50. package/crypto/prime_field/test.f.js +149 -0
  51. package/crypto/secp/module.f.d.ts +68 -0
  52. package/crypto/secp/module.f.js +127 -0
  53. package/crypto/secp/test.f.d.ts +5 -0
  54. package/crypto/secp/test.f.js +72 -0
  55. package/crypto/sha2/module.f.d.ts +13 -0
  56. package/crypto/sha2/module.f.js +145 -0
  57. package/crypto/sha2/test.f.d.ts +9 -0
  58. package/crypto/sha2/test.f.js +82 -0
  59. package/dev/module.f.d.ts +1 -0
  60. package/dev/module.f.js +1 -0
  61. package/dev/test/module.f.d.ts +20 -0
  62. package/dev/test/module.f.js +75 -0
  63. package/dev/test.f.d.ts +9 -0
  64. package/dev/{test.f.ts → test.f.js} +22 -24
  65. package/djs/module.f.d.ts +17 -0
  66. package/djs/module.f.js +63 -0
  67. package/djs/parser/module.f.d.ts +12 -0
  68. package/djs/parser/module.f.js +333 -0
  69. package/djs/parser/test.f.d.ts +12 -0
  70. package/djs/parser/test.f.js +717 -0
  71. package/djs/serializer/module.f.d.ts +9 -0
  72. package/djs/serializer/module.f.js +81 -0
  73. package/djs/test/input.f.d.ts +2 -0
  74. package/djs/test/input.f.js +4 -0
  75. package/djs/test/m.f.d.ts +2 -0
  76. package/djs/test/m.f.js +1 -0
  77. package/djs/test.f.d.ts +12 -0
  78. package/djs/test.f.js +84 -0
  79. package/djs/tokenizer/module.f.d.ts +8 -0
  80. package/djs/tokenizer/module.f.js +60 -0
  81. package/djs/tokenizer/test.f.d.ts +7 -0
  82. package/djs/tokenizer/test.f.js +529 -0
  83. package/fsc/module.f.d.ts +5 -0
  84. package/fsc/module.f.js +75 -0
  85. package/fsc/test.f.d.ts +4 -0
  86. package/fsc/test.f.js +19 -0
  87. package/fsm/module.f.d.ts +13 -0
  88. package/fsm/module.f.js +59 -0
  89. package/fsm/test.f.d.ts +5 -0
  90. package/fsm/test.f.js +137 -0
  91. package/html/module.f.d.ts +13 -0
  92. package/html/module.f.js +58 -0
  93. package/html/test.f.d.ts +9 -0
  94. package/html/test.f.js +42 -0
  95. package/issues/test.f.d.ts +16 -0
  96. package/issues/test.f.js +70 -0
  97. package/js/tokenizer/module.f.d.ts +86 -0
  98. package/js/tokenizer/module.f.js +503 -0
  99. package/js/tokenizer/test.f.d.ts +9 -0
  100. package/js/tokenizer/test.f.js +905 -0
  101. package/json/module.f.d.ts +20 -0
  102. package/json/module.f.js +68 -0
  103. package/json/parser/module.f.d.ts +5 -0
  104. package/json/parser/module.f.js +155 -0
  105. package/json/parser/test.f.d.ts +5 -0
  106. package/json/parser/test.f.js +328 -0
  107. package/json/serializer/module.f.d.ts +7 -0
  108. package/json/serializer/module.f.js +21 -0
  109. package/json/serializer/test.f.d.ts +8 -0
  110. package/json/serializer/test.f.js +87 -0
  111. package/json/test.f.d.ts +8 -0
  112. package/json/test.f.js +61 -0
  113. package/json/tokenizer/module.f.d.ts +8 -0
  114. package/json/tokenizer/module.f.js +52 -0
  115. package/json/tokenizer/test.f.d.ts +6 -0
  116. package/json/tokenizer/test.f.js +419 -0
  117. package/nanvm-lib/tests/test.f.d.ts +27 -0
  118. package/nanvm-lib/tests/test.f.js +84 -0
  119. package/nodejs/version/module.f.d.ts +11 -0
  120. package/nodejs/version/module.f.js +16 -0
  121. package/nodejs/version/test.f.d.ts +2 -0
  122. package/nodejs/version/{test.f.ts → test.f.js} +13 -22
  123. package/package.json +9 -5
  124. package/text/ascii/module.f.d.ts +129 -0
  125. package/text/ascii/module.f.js +148 -0
  126. package/text/ascii/test.f.d.ts +4 -0
  127. package/text/ascii/test.f.js +14 -0
  128. package/text/module.f.d.ts +8 -0
  129. package/text/module.f.js +10 -0
  130. package/text/sgr/module.f.d.ts +8 -0
  131. package/text/sgr/module.f.js +8 -0
  132. package/text/test.f.d.ts +2 -0
  133. package/text/test.f.js +18 -0
  134. package/text/utf16/module.f.d.ts +9 -0
  135. package/text/utf16/module.f.js +66 -0
  136. package/text/utf16/test.f.d.ts +6 -0
  137. package/text/utf16/test.f.js +144 -0
  138. package/text/utf8/module.f.d.ts +6 -0
  139. package/text/utf8/module.f.js +112 -0
  140. package/text/utf8/test.f.d.ts +6 -0
  141. package/text/utf8/test.f.js +175 -0
  142. package/types/array/module.f.d.ts +21 -0
  143. package/types/array/module.f.js +23 -0
  144. package/types/array/test.f.d.ts +10 -0
  145. package/types/array/test.f.js +116 -0
  146. package/types/bigfloat/module.f.d.ts +3 -0
  147. package/types/bigfloat/module.f.js +66 -0
  148. package/types/bigfloat/test.f.d.ts +6 -0
  149. package/types/bigfloat/test.f.js +349 -0
  150. package/types/bigint/module.f.d.ts +54 -0
  151. package/types/bigint/{module.f.ts → module.f.js} +42 -65
  152. package/types/bigint/test.f.d.ts +16 -0
  153. package/types/bigint/test.f.js +199 -0
  154. package/types/bit_vec/module.f.d.ts +134 -0
  155. package/types/bit_vec/{module.f.ts → module.f.js} +47 -65
  156. package/types/bit_vec/test.f.d.ts +22 -0
  157. package/types/bit_vec/test.f.js +210 -0
  158. package/types/btree/find/module.f.d.ts +20 -0
  159. package/types/btree/find/module.f.js +84 -0
  160. package/types/btree/find/test.f.d.ts +2 -0
  161. package/types/btree/find/test.f.js +152 -0
  162. package/types/btree/module.f.d.ts +4 -0
  163. package/types/btree/module.f.js +31 -0
  164. package/types/btree/remove/module.f.d.ts +4 -0
  165. package/types/btree/remove/module.f.js +174 -0
  166. package/types/btree/remove/test.f.d.ts +5 -0
  167. package/types/btree/remove/test.f.js +634 -0
  168. package/types/btree/set/module.f.d.ts +3 -0
  169. package/types/btree/set/module.f.js +103 -0
  170. package/types/btree/set/test.f.d.ts +2 -0
  171. package/types/btree/set/test.f.js +360 -0
  172. package/types/btree/test.f.d.ts +8 -0
  173. package/types/btree/test.f.js +75 -0
  174. package/types/btree/types/module.f.d.ts +11 -0
  175. package/types/btree/types/module.f.js +1 -0
  176. package/types/byte_set/module.f.d.ts +16 -0
  177. package/types/byte_set/module.f.js +28 -0
  178. package/types/byte_set/test.f.d.ts +12 -0
  179. package/types/byte_set/test.f.js +122 -0
  180. package/types/function/compare/module.f.d.ts +10 -0
  181. package/types/function/compare/module.f.js +7 -0
  182. package/types/function/compare/test.f.d.ts +2 -0
  183. package/types/function/compare/test.f.js +8 -0
  184. package/types/function/module.f.d.ts +28 -0
  185. package/types/function/module.f.js +19 -0
  186. package/types/function/operator/module.f.d.ts +20 -0
  187. package/types/function/operator/module.f.js +18 -0
  188. package/types/function/test.f.d.ts +2 -0
  189. package/types/function/test.f.js +12 -0
  190. package/types/list/module.f.d.ts +50 -0
  191. package/types/list/module.f.js +171 -0
  192. package/types/list/test.f.d.ts +22 -0
  193. package/types/list/test.f.js +395 -0
  194. package/types/map/module.f.d.ts +14 -0
  195. package/types/map/module.f.js +31 -0
  196. package/types/map/test.f.d.ts +5 -0
  197. package/types/map/test.f.js +114 -0
  198. package/types/nibble_set/module.f.d.ts +10 -0
  199. package/types/nibble_set/module.f.js +9 -0
  200. package/types/nibble_set/test.f.d.ts +12 -0
  201. package/types/nibble_set/test.f.js +90 -0
  202. package/types/nullable/module.f.d.ts +3 -0
  203. package/types/nullable/module.f.js +2 -0
  204. package/types/nullable/test.f.d.ts +2 -0
  205. package/types/nullable/test.f.js +12 -0
  206. package/types/number/module.f.d.ts +6 -0
  207. package/types/number/module.f.js +8 -0
  208. package/types/number/test.f.d.ts +11 -0
  209. package/types/number/test.f.js +124 -0
  210. package/types/object/module.f.d.ts +10 -0
  211. package/types/object/module.f.js +12 -0
  212. package/types/object/test.f.d.ts +5 -0
  213. package/types/object/test.f.js +17 -0
  214. package/types/range/module.f.d.ts +3 -0
  215. package/types/range/module.f.js +2 -0
  216. package/types/range/test.f.d.ts +2 -0
  217. package/types/range/test.f.js +18 -0
  218. package/types/range_map/module.f.d.ts +14 -0
  219. package/types/range_map/module.f.js +51 -0
  220. package/types/range_map/test.f.d.ts +6 -0
  221. package/types/range_map/test.f.js +176 -0
  222. package/types/result/module.f.d.ts +7 -0
  223. package/types/result/module.f.js +8 -0
  224. package/types/sorted_list/module.f.d.ts +16 -0
  225. package/types/sorted_list/module.f.js +56 -0
  226. package/types/sorted_list/test.f.d.ts +5 -0
  227. package/types/sorted_list/test.f.js +64 -0
  228. package/types/sorted_set/module.f.d.ts +7 -0
  229. package/types/sorted_set/module.f.js +14 -0
  230. package/types/sorted_set/test.f.d.ts +6 -0
  231. package/types/sorted_set/test.f.js +78 -0
  232. package/types/string/module.f.d.ts +6 -0
  233. package/types/string/module.f.js +11 -0
  234. package/types/string/test.f.d.ts +15 -0
  235. package/types/string/test.f.js +58 -0
  236. package/types/string_set/module.f.d.ts +9 -0
  237. package/types/string_set/module.f.js +22 -0
  238. package/types/string_set/test.f.d.ts +5 -0
  239. package/types/string_set/test.f.js +65 -0
  240. package/.github/FUNDING.yml +0 -12
  241. package/.github/dependabot.yml +0 -11
  242. package/.github/workflows/ci.yml +0 -88
  243. package/.github/workflows/npm-publish.yml +0 -53
  244. package/CHANGELOG.md +0 -29
  245. package/Cargo.lock +0 -18
  246. package/Cargo.toml +0 -7
  247. package/com/README.md +0 -3
  248. package/com/cpp/README.md +0 -80
  249. package/com/cpp/module.f.ts +0 -180
  250. package/com/cpp/nanocom.hpp +0 -195
  251. package/com/cpp/testlib.f.ts +0 -8
  252. package/com/cs/module.f.ts +0 -145
  253. package/com/cs/testlib.f.ts +0 -8
  254. package/com/proposals.md +0 -28
  255. package/com/rust/module.f.ts +0 -287
  256. package/com/rust/nanocom/Cargo.lock +0 -7
  257. package/com/rust/nanocom/Cargo.toml +0 -15
  258. package/com/rust/nanocom/README.md +0 -56
  259. package/com/rust/nanocom/src/class.rs +0 -6
  260. package/com/rust/nanocom/src/cobject.rs +0 -90
  261. package/com/rust/nanocom/src/guid.rs +0 -15
  262. package/com/rust/nanocom/src/hresult.rs +0 -7
  263. package/com/rust/nanocom/src/interface.rs +0 -9
  264. package/com/rust/nanocom/src/iunknown.rs +0 -13
  265. package/com/rust/nanocom/src/lib.rs +0 -20
  266. package/com/rust/nanocom/src/object.rs +0 -34
  267. package/com/rust/nanocom/src/ref.rs +0 -57
  268. package/com/rust/nanocom/src/vmt.rs +0 -7
  269. package/com/rust/nanocom/tests/it.rs +0 -186
  270. package/com/rust/nanocom/tests/itmod.rs +0 -195
  271. package/com/rust/testlib.f.ts +0 -8
  272. package/com/test/build.f.ts +0 -111
  273. package/com/test/build.ts +0 -45
  274. package/com/test/cpp/main.cpp +0 -74
  275. package/com/test/cs/Program.cs +0 -31
  276. package/com/test/cs/cs.csproj +0 -16
  277. package/com/test/rust/Cargo.toml +0 -12
  278. package/com/test/rust/src/lib.rs +0 -56
  279. package/com/types/module.f.ts +0 -62
  280. package/commonjs/README.md +0 -94
  281. package/commonjs/build/module.f.ts +0 -100
  282. package/commonjs/build/test.f.ts +0 -107
  283. package/commonjs/module/module.f.ts +0 -41
  284. package/commonjs/module.f.ts +0 -7
  285. package/commonjs/module.ts +0 -31
  286. package/commonjs/package/dependencies/module.f.ts +0 -22
  287. package/commonjs/package/dependencies/test.f.ts +0 -8
  288. package/commonjs/package/module.f.ts +0 -31
  289. package/commonjs/package/test.f.ts +0 -12
  290. package/commonjs/path/README.md +0 -17
  291. package/commonjs/path/module.f.ts +0 -171
  292. package/commonjs/test.ts +0 -64
  293. package/crypto/README.md +0 -3
  294. package/crypto/prime_field/module.f.ts +0 -114
  295. package/crypto/prime_field/test.f.ts +0 -95
  296. package/crypto/secp/module.f.ts +0 -182
  297. package/crypto/secp/test.f.ts +0 -68
  298. package/crypto/sha2/module.f.ts +0 -215
  299. package/crypto/sha2/test.f.ts +0 -83
  300. package/deno.json +0 -71
  301. package/dev/README.md +0 -8
  302. package/dev/index.ts +0 -3
  303. package/dev/module.f.ts +0 -1
  304. package/dev/module.ts +0 -196
  305. package/dev/test/module.f.ts +0 -135
  306. package/dev/test.ts +0 -53
  307. package/djs/README.md +0 -54
  308. package/djs/module.f.ts +0 -76
  309. package/djs/parser/module.f.ts +0 -509
  310. package/djs/parser/test.f.ts +0 -461
  311. package/djs/serializer/module.f.ts +0 -90
  312. package/djs/test.f.ts +0 -67
  313. package/djs/tokenizer/module.f.ts +0 -99
  314. package/djs/tokenizer/test.f.ts +0 -364
  315. package/doc/LANGUAGE.md +0 -255
  316. package/doc/README.md +0 -61
  317. package/doc/byte-code.md +0 -59
  318. package/doc/fa.md +0 -174
  319. package/doc/predefined.md +0 -143
  320. package/doc/proposals.md +0 -21
  321. package/doc/vm/README.md +0 -24
  322. package/doc/vm-rearchitecture.md +0 -129
  323. package/doc/vm.md +0 -150
  324. package/fsc/README.md +0 -111
  325. package/fsc/module.f.ts +0 -122
  326. package/fsc/test.f.ts +0 -21
  327. package/fsm/README.md +0 -113
  328. package/fsm/module.f.ts +0 -107
  329. package/fsm/test.f.ts +0 -139
  330. package/funding.json +0 -61
  331. package/html/README.md +0 -32
  332. package/html/module.f.ts +0 -109
  333. package/html/test.f.ts +0 -37
  334. package/issues/01-test-debug.md +0 -3
  335. package/issues/02-esm.md +0 -8
  336. package/issues/03-djs.md +0 -57
  337. package/issues/05-publish.md +0 -40
  338. package/issues/11-fs-load.md +0 -13
  339. package/issues/17-djs-extension.md +0 -6
  340. package/issues/README.md +0 -42
  341. package/issues/lang/1000-json.md +0 -50
  342. package/issues/lang/2110-default-export.md +0 -11
  343. package/issues/lang/2120-const.md +0 -14
  344. package/issues/lang/2130-default-import.md +0 -10
  345. package/issues/lang/2210-block-comment.md +0 -12
  346. package/issues/lang/2220-namespace-import.md +0 -25
  347. package/issues/lang/2310-undefined.md +0 -7
  348. package/issues/lang/2320-bigint.md +0 -7
  349. package/issues/lang/2330-property-accessor.md +0 -225
  350. package/issues/lang/2340-operators.md +0 -41
  351. package/issues/lang/2350-grouping.md +0 -11
  352. package/issues/lang/2360-built-in.md +0 -81
  353. package/issues/lang/2410-identifier-property.md +0 -9
  354. package/issues/lang/2420-line-comment.md +0 -10
  355. package/issues/lang/2430-trailing-comma.md +0 -13
  356. package/issues/lang/2440-shorthand.md +0 -8
  357. package/issues/lang/2450-destructuring.md +0 -12
  358. package/issues/lang/3110-function.md +0 -35
  359. package/issues/lang/3120-parameters.md +0 -9
  360. package/issues/lang/3130-body-const.md +0 -12
  361. package/issues/lang/3220-let.md +0 -11
  362. package/issues/lang/3240-export.md +0 -44
  363. package/issues/lang/3370-type-inference.md +0 -69
  364. package/issues/lang/3380-promise.md +0 -22
  365. package/issues/lang/3390-class.md +0 -3
  366. package/issues/lang/3410-expression.md +0 -12
  367. package/issues/lang/3420-one-parameter.md +0 -10
  368. package/issues/lang/3430-assignments.md +0 -23
  369. package/issues/lang/README.md +0 -193
  370. package/issues/test.f.ts +0 -58
  371. package/js/tokenizer/module.f.ts +0 -882
  372. package/js/tokenizer/test.f.ts +0 -617
  373. package/json/html/README.md +0 -49
  374. package/json/module.f.ts +0 -94
  375. package/json/parser/module.f.ts +0 -221
  376. package/json/parser/test.f.ts +0 -255
  377. package/json/serializer/module.f.ts +0 -74
  378. package/json/serializer/test.f.ts +0 -64
  379. package/json/test.f.ts +0 -48
  380. package/json/tokenizer/module.f.ts +0 -85
  381. package/json/tokenizer/test.f.ts +0 -290
  382. package/nanvm-lib/Cargo.toml +0 -6
  383. package/nanvm-lib/src/extension.rs +0 -130
  384. package/nanvm-lib/src/interface.rs +0 -133
  385. package/nanvm-lib/src/lib.rs +0 -7
  386. package/nanvm-lib/src/naive.rs +0 -236
  387. package/nanvm-lib/src/nanenum.rs +0 -236
  388. package/nanvm-lib/src/nullish.rs +0 -7
  389. package/nanvm-lib/src/sign.rs +0 -5
  390. package/nanvm-lib/src/simple.rs +0 -32
  391. package/nanvm-lib/tests/test.f.ts +0 -80
  392. package/nanvm-lib/tests/test.rs +0 -108
  393. package/nodejs/version/main.ts +0 -4
  394. package/nodejs/version/module.f.ts +0 -42
  395. package/text/README.md +0 -110
  396. package/text/ascii/module.f.ts +0 -222
  397. package/text/ascii/test.f.ts +0 -14
  398. package/text/module.f.ts +0 -30
  399. package/text/sgr/README.md +0 -3
  400. package/text/sgr/module.f.ts +0 -13
  401. package/text/test.f.ts +0 -19
  402. package/text/utf16/module.f.ts +0 -120
  403. package/text/utf16/test.f.ts +0 -107
  404. package/text/utf8/module.f.ts +0 -116
  405. package/text/utf8/test.f.ts +0 -125
  406. package/tsconfig.json +0 -104
  407. package/types/array/module.f.ts +0 -89
  408. package/types/array/test.f.ts +0 -88
  409. package/types/bigfloat/module.f.ts +0 -93
  410. package/types/bigfloat/test.f.ts +0 -218
  411. package/types/bigint/README.md +0 -35
  412. package/types/bigint/test.f.ts +0 -144
  413. package/types/bit_vec/README.md +0 -18
  414. package/types/bit_vec/test.f.ts +0 -129
  415. package/types/btree/README.md +0 -160
  416. package/types/btree/find/module.f.ts +0 -92
  417. package/types/btree/find/test.f.ts +0 -122
  418. package/types/btree/module.f.ts +0 -35
  419. package/types/btree/remove/module.f.ts +0 -151
  420. package/types/btree/remove/test.f.ts +0 -498
  421. package/types/btree/set/module.f.ts +0 -89
  422. package/types/btree/set/test.f.ts +0 -415
  423. package/types/btree/test.f.ts +0 -92
  424. package/types/btree/types/module.f.ts +0 -27
  425. package/types/byte_set/module.f.ts +0 -73
  426. package/types/byte_set/test.f.ts +0 -84
  427. package/types/function/compare/module.f.ts +0 -26
  428. package/types/function/compare/test.f.ts +0 -7
  429. package/types/function/module.f.ts +0 -43
  430. package/types/function/operator/module.f.ts +0 -65
  431. package/types/function/test.f.ts +0 -20
  432. package/types/list/module.f.ts +0 -350
  433. package/types/list/test.f.ts +0 -327
  434. package/types/map/module.f.ts +0 -65
  435. package/types/map/test.f.ts +0 -76
  436. package/types/nibble_set/module.f.ts +0 -34
  437. package/types/nibble_set/test.f.ts +0 -57
  438. package/types/nullable/module.f.ts +0 -9
  439. package/types/nullable/test.f.ts +0 -9
  440. package/types/number/module.f.ts +0 -20
  441. package/types/number/test.f.ts +0 -194
  442. package/types/object/module.f.ts +0 -30
  443. package/types/object/test.f.ts +0 -14
  444. package/types/range/module.f.ts +0 -10
  445. package/types/range/test.f.ts +0 -9
  446. package/types/range_map/module.f.ts +0 -70
  447. package/types/range_map/test.f.ts +0 -189
  448. package/types/result/module.f.ts +0 -20
  449. package/types/result/module.ts +0 -18
  450. package/types/sorted_list/module.f.ts +0 -83
  451. package/types/sorted_list/test.f.ts +0 -57
  452. package/types/sorted_set/module.f.ts +0 -36
  453. package/types/sorted_set/test.f.ts +0 -67
  454. package/types/string/module.f.ts +0 -26
  455. package/types/string/test.f.ts +0 -43
  456. package/types/string_set/module.f.ts +0 -37
  457. package/types/string_set/test.f.ts +0 -34
@@ -0,0 +1,14 @@
1
+ import * as Compare from "../function/compare/module.f.js";
2
+ import * as list from "../list/module.f.js";
3
+ const { toArray } = list;
4
+ import * as sortedList from "../sorted_list/module.f.js";
5
+ const { merge, genericMerge, find } = sortedList;
6
+ export const union = cmp => a => b => toArray(merge(cmp)(a)(b));
7
+ export const intersect = cmp => a => b => toArray(intersectMerge(cmp)(a)(b));
8
+ const tailReduce = () => () => null;
9
+ const intersectMerge = cmp => genericMerge({ reduceOp: intersectReduce(cmp), tailReduce })(null);
10
+ const intersectReduce = cmp => state => a => b => {
11
+ const sign = cmp(a)(b);
12
+ return [sign === 0 ? a : null, sign, state];
13
+ };
14
+ export const has = cmp => value => set => find(cmp)(value)(set) === value;
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ union: (() => void)[];
3
+ intersect: (() => void)[];
4
+ has: (() => void)[];
5
+ };
6
+ export default _default;
@@ -0,0 +1,78 @@
1
+ import * as _ from "./module.f.js";
2
+ import * as compare from "../function/compare/module.f.js";
3
+ const { unsafeCmp } = compare;
4
+ import * as json from "../../json/module.f.js";
5
+ import * as object from "../object/module.f.js";
6
+ const { sort } = object;
7
+ import * as list from "../list/module.f.js";
8
+ const { toArray, countdown, length } = list;
9
+ import * as Map from "../map/module.f.js";
10
+ import * as f from "../function/module.f.js";
11
+ const { flip } = f;
12
+ const stringify = a => json.stringify(sort)(a);
13
+ const reverseCmp = flip(unsafeCmp);
14
+ export default {
15
+ union: [
16
+ () => {
17
+ const result = stringify(toArray(_.union(unsafeCmp)([2, 3, 4])([1, 3, 5])));
18
+ if (result !== '[1,2,3,4,5]') {
19
+ throw result;
20
+ }
21
+ },
22
+ () => {
23
+ const result = stringify(toArray(_.union(unsafeCmp)([1, 2, 3])([])));
24
+ if (result !== '[1,2,3]') {
25
+ throw result;
26
+ }
27
+ },
28
+ () => {
29
+ const n = 10_000;
30
+ const sortedSet = toArray(countdown(n));
31
+ const result = _.union(reverseCmp)(sortedSet)(sortedSet);
32
+ const len = length(result);
33
+ if (len != n) {
34
+ throw result;
35
+ }
36
+ }
37
+ ],
38
+ intersect: [
39
+ () => {
40
+ const result = stringify(toArray(_.intersect(unsafeCmp)([2, 3, 4])([1, 3, 5])));
41
+ if (result !== '[3]') {
42
+ throw result;
43
+ }
44
+ },
45
+ () => {
46
+ const result = stringify(toArray(_.intersect(unsafeCmp)([1, 2, 3])([])));
47
+ if (result !== '[]') {
48
+ throw result;
49
+ }
50
+ }
51
+ ],
52
+ has: [
53
+ () => {
54
+ const result = _.has(unsafeCmp)(0)([0, 10, 20, 30, 40, 50, 60, 70, 80, 90]);
55
+ if (!result) {
56
+ throw result;
57
+ }
58
+ },
59
+ () => {
60
+ const result = _.has(unsafeCmp)(3)([0, 10, 20, 30, 40, 50, 60, 70, 80, 90]);
61
+ if (result) {
62
+ throw result;
63
+ }
64
+ },
65
+ () => {
66
+ const result = _.has(unsafeCmp)(77)([0, 10, 20, 30, 40, 50, 60, 70, 80, 90]);
67
+ if (result) {
68
+ throw result;
69
+ }
70
+ },
71
+ () => {
72
+ const result = _.has(unsafeCmp)(80)([0, 10, 20, 30, 40, 50, 60, 70, 80, 90]);
73
+ if (!result) {
74
+ throw result;
75
+ }
76
+ }
77
+ ]
78
+ };
@@ -0,0 +1,6 @@
1
+ import * as list from '../list/module.f.ts';
2
+ import * as compare from '../function/compare/module.f.ts';
3
+ export declare const join: (_: string) => (input: list.List<string>) => string;
4
+ export declare const concat: (input: list.List<string>) => string;
5
+ export declare const repeat: (n: string) => (v: number) => string;
6
+ export declare const cmp: (a: string) => (b: string) => compare.Sign;
@@ -0,0 +1,11 @@
1
+ import * as list from "../list/module.f.js";
2
+ const { reduce: listReduce, repeat: listRepeat } = list;
3
+ import { compose } from "../function/module.f.js";
4
+ import * as compare from "../function/compare/module.f.js";
5
+ const { unsafeCmp } = compare;
6
+ import { join as joinOp, concat as concatOp } from "../function/operator/module.f.js";
7
+ const reduce = o => listReduce(o)('');
8
+ export const join = compose(joinOp)(reduce);
9
+ export const concat = reduce(concatOp);
10
+ export const repeat = v => compose(listRepeat(v))(concat);
11
+ export const cmp = unsafeCmp;
@@ -0,0 +1,15 @@
1
+ declare const _default: {
2
+ join: {
3
+ 0: () => void;
4
+ 1: () => void;
5
+ 3: () => void;
6
+ };
7
+ concat: () => void;
8
+ repeatList: {
9
+ 0: () => void;
10
+ 5: () => void;
11
+ };
12
+ repeat: () => void;
13
+ cmp: () => void;
14
+ };
15
+ export default _default;
@@ -0,0 +1,58 @@
1
+ import * as _ from "./module.f.js";
2
+ const { join, concat, repeat, cmp } = _;
3
+ import * as list from "../list/module.f.js";
4
+ const { repeat: repeatList } = list;
5
+ export default {
6
+ join: {
7
+ 0: () => {
8
+ const result = join('/')([]);
9
+ if (result !== '') {
10
+ throw result;
11
+ }
12
+ },
13
+ 1: () => {
14
+ const result = join('/')(['']);
15
+ if (result !== '') {
16
+ throw result;
17
+ }
18
+ },
19
+ 3: () => {
20
+ const result = join(' ')(['hello', 'world', '!']);
21
+ if (result !== 'hello world !') {
22
+ throw result;
23
+ }
24
+ }
25
+ },
26
+ concat: () => {
27
+ const result = concat(['hello', 'world']);
28
+ if (result !== 'helloworld') {
29
+ throw result;
30
+ }
31
+ },
32
+ repeatList: {
33
+ 0: () => {
34
+ const s = join('.')(repeatList('x')(0));
35
+ if (s != '') {
36
+ throw s;
37
+ }
38
+ },
39
+ 5: () => {
40
+ const s = join('.')(repeatList('x')(5));
41
+ if (s != 'x.x.x.x.x') {
42
+ throw s;
43
+ }
44
+ }
45
+ },
46
+ repeat: () => {
47
+ const s = repeat('x')(5);
48
+ if (s != 'xxxxx') {
49
+ throw s;
50
+ }
51
+ },
52
+ cmp: () => {
53
+ const result = cmp('3')('4');
54
+ if (result !== -1) {
55
+ throw result;
56
+ }
57
+ }
58
+ };
@@ -0,0 +1,9 @@
1
+ import * as BtreeTypes from '../btree/types/module.f.ts';
2
+ import { type List } from '../list/module.f.ts';
3
+ export declare const values: (s: StringSet) => List<string>;
4
+ export declare const empty: null;
5
+ export type StringSet = BtreeTypes.Tree<string>;
6
+ export declare const contains: (value: string) => (set: StringSet) => boolean;
7
+ export declare const set: (value: string) => (s: StringSet) => StringSet;
8
+ export declare const fromValues: (input: List<string>) => StringSet;
9
+ export declare const remove: (value: string) => (s: StringSet) => StringSet;
@@ -0,0 +1,22 @@
1
+ import * as BtreeTypes from "../btree/types/module.f.js";
2
+ import * as btree from "../btree/module.f.js";
3
+ import * as btf from "../btree/find/module.f.js";
4
+ const { find, isFound } = btf;
5
+ import * as btr from "../btree/remove/module.f.js";
6
+ const { remove: btreeRemove } = btr;
7
+ import * as bts from "../btree/set/module.f.js";
8
+ const { set: btreeSet } = bts;
9
+ import * as string from "../string/module.f.js";
10
+ const { cmp } = string;
11
+ import { fold } from "../list/module.f.js";
12
+ import * as f from "../function/module.f.js";
13
+ const { compose } = f;
14
+ export const values = btree.values;
15
+ export const empty = btree.empty;
16
+ export const contains = value => {
17
+ const f = find(cmp(value));
18
+ return s => s !== null && isFound(f(s).first);
19
+ };
20
+ export const set = value => btreeSet(cmp(value))(() => value);
21
+ export const fromValues = fold(set)(null);
22
+ export const remove = compose(cmp)(btreeRemove);
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ contains: () => void;
3
+ remove: () => void;
4
+ };
5
+ export default _default;
@@ -0,0 +1,65 @@
1
+ import * as _ from "./module.f.js";
2
+ export default {
3
+ contains: () => {
4
+ const r = _.set('hello')(null);
5
+ if (!_.contains('hello')(r)) {
6
+ throw r;
7
+ }
8
+ if (_.contains('hello1')(r)) {
9
+ throw r;
10
+ }
11
+ },
12
+ remove: () => {
13
+ let r = _.set('hello')(null);
14
+ r = _.set('world')(r);
15
+ r = _.set('HELLO')(r);
16
+ r = _.set('WORLD!')(r);
17
+ if (!_.contains('hello')(r)) {
18
+ throw r;
19
+ }
20
+ if (_.contains('hello1')(r)) {
21
+ throw r;
22
+ }
23
+ if (!_.contains('HELLO')(r)) {
24
+ throw r;
25
+ }
26
+ if (_.contains('WORLD')(r)) {
27
+ throw r;
28
+ }
29
+ if (!_.contains('world')(r)) {
30
+ throw r;
31
+ }
32
+ if (_.contains('world!')(r)) {
33
+ throw r;
34
+ }
35
+ if (!_.contains('WORLD!')(r)) {
36
+ throw r;
37
+ }
38
+ //
39
+ r = _.remove('hello')(r);
40
+ if (_.contains('hello')(r)) {
41
+ throw r;
42
+ }
43
+ if (!_.contains('world')(r)) {
44
+ throw r;
45
+ }
46
+ r = _.remove('world')(r);
47
+ if (_.contains('world')(r)) {
48
+ throw r;
49
+ }
50
+ if (!_.contains('HELLO')(r)) {
51
+ throw r;
52
+ }
53
+ r = _.remove('HELLO')(r);
54
+ if (_.contains('HELLO')(r)) {
55
+ throw r;
56
+ }
57
+ if (!_.contains('WORLD!')(r)) {
58
+ throw r;
59
+ }
60
+ r = _.remove('WORLD!')(r);
61
+ if (r !== null) {
62
+ throw r;
63
+ }
64
+ }
65
+ };
@@ -1,12 +0,0 @@
1
- # These are supported funding model platforms
2
-
3
- github: [sergey-shandar] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4
- patreon: # Replace with a single Patreon username
5
- open_collective: functionalscript # Replace with a single Open Collective username
6
- ko_fi: # Replace with a single Ko-fi username
7
- tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8
- community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9
- liberapay: # Replace with a single Liberapay username
10
- issuehunt: # Replace with a single IssueHunt username
11
- otechie: # Replace with a single Otechie username
12
- custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
@@ -1,11 +0,0 @@
1
- # To get started with Dependabot version updates, you'll need to specify which
2
- # package ecosystems to update and where the package manifests are located.
3
- # Please see the documentation for all configuration options:
4
- # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5
-
6
- version: 2
7
- updates:
8
- - package-ecosystem: "npm" # See documentation for possible values
9
- directory: "/" # Location of package manifests
10
- schedule:
11
- interval: "weekly"
@@ -1,88 +0,0 @@
1
- # This workflow will do a clean install of node dependencies, cache/restore them, build the source code and run tests across different versions of node
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
-
4
- name: CI
5
-
6
- on:
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
-
12
- jobs:
13
- node20:
14
- runs-on: ubuntu-latest
15
-
16
- strategy:
17
- matrix:
18
- node-version: [16, 18, 20]
19
- # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
20
-
21
- steps:
22
- - uses: actions/checkout@v2
23
- - uses: actions/setup-node@v2
24
- with:
25
- node-version: ${{ matrix.node-version }}
26
- - run: npm ci
27
- - run: npm run test20
28
-
29
- node:
30
- runs-on: ubuntu-latest
31
-
32
- strategy:
33
- matrix:
34
- node-version: [22, 23]
35
-
36
- steps:
37
- - uses: actions/checkout@v2
38
- - uses: actions/setup-node@v2
39
- with:
40
- node-version: ${{ matrix.node-version }}
41
- - run: npm ci
42
- - run: npm test
43
- - run: npm run version
44
- - run: npm pack
45
-
46
- deno:
47
-
48
- runs-on: ubuntu-latest
49
-
50
- strategy:
51
- matrix:
52
- deno-version: [1, 2]
53
-
54
- steps:
55
- - uses: actions/checkout@v2
56
- - uses: denoland/setup-deno@v1
57
- with:
58
- deno-version: ${{ matrix.deno-version }}
59
- - run: deno task test
60
- - run: deno publish --dry-run --allow-slow-types
61
-
62
- bun:
63
-
64
- runs-on: ubuntu-latest
65
-
66
- steps:
67
- - uses: actions/checkout@v2
68
- - run: curl https://bun.sh/install | bash
69
- - run: /home/runner/.bun/bin/bun ./dev/test.ts
70
-
71
- COM:
72
- strategy:
73
- matrix:
74
- # https://docs.github.com/en/actions/using-jobs/choosing-the-runner-for-a-job#choosing-github-hosted-runners
75
- os: ['ubuntu-latest', 'windows-latest', 'macos-latest']
76
-
77
- runs-on: ${{ matrix.os }}
78
-
79
- steps:
80
- - uses: actions/checkout@v3
81
- - uses: actions/setup-node@v2
82
- with:
83
- node-version: 23
84
- - uses: actions/setup-dotnet@v3
85
- with:
86
- dotnet-version: 9
87
- - run: npm ci
88
- - run: npm run comtest
@@ -1,53 +0,0 @@
1
- # This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages
3
-
4
- name: node publish
5
-
6
- on:
7
- push:
8
- branches: [ main ]
9
-
10
- jobs:
11
- publish-npm:
12
- runs-on: ubuntu-latest
13
- permissions:
14
- contents: read
15
- id-token: write # This is required for requesting the JWT
16
- steps:
17
- - uses: actions/checkout@v2
18
- with:
19
- fetch-depth: 0
20
- - uses: actions/setup-node@v2
21
- with:
22
- node-version: 22
23
- registry-url: https://registry.npmjs.org/
24
- - uses: denoland/setup-deno@v1
25
- with:
26
- deno-version: 2
27
- - run: npm ci
28
- - run: npm run version
29
- - run: npm run index
30
- - run: npm publish
31
- continue-on-error: true
32
- env:
33
- NODE_AUTH_TOKEN: ${{secrets.npm_token}}
34
- - run: deno publish --allow-dirty --allow-slow-types
35
- continue-on-error: true
36
-
37
-
38
-
39
- # publish-gpr:
40
- # runs-on: ubuntu-latest
41
- # permissions:
42
- # contents: read
43
- # packages: write
44
- # steps:
45
- # - uses: actions/checkout@v2
46
- # - uses: actions/setup-node@v2
47
- # with:
48
- # node-version: 14
49
- # registry-url: https://npm.pkg.github.com/
50
- # - run: npm ci
51
- # - run: npm publish
52
- # env:
53
- # NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
package/CHANGELOG.md DELETED
@@ -1,29 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ## Unreleased
9
-
10
- ## 0.3.0
11
-
12
- - Switching to TypeScript file [PR #330] https://github.com/functionalscript/functionalscript/pull/330
13
- - DJS: add serializer [PR #326] https://github.com/functionalscript/functionalscript/pull/326
14
-
15
- ## 0.2.6
16
-
17
- - Refactoring of a vector of bits [PR #328](https://github.com/functionalscript/functionalscript/pull/328)
18
-
19
- ## 0.2.5
20
-
21
- - new [crypto/] directory [PR #327](https://github.com/functionalscript/functionalscript/pull/327).
22
- - simplified HTML [PR #327](https://github.com/functionalscript/functionalscript/pull/327).
23
- - djs: add undefined and comments [PR #325](https://github.com/functionalscript/functionalscript/pull/325).
24
-
25
- ## 0.2.3
26
-
27
- - BitVec and documentation update [PR #322](https://github.com/functionalscript/functionalscript/pull/322).
28
-
29
- ## 0.1.608
package/Cargo.lock DELETED
@@ -1,18 +0,0 @@
1
- # This file is automatically @generated by Cargo.
2
- # It is not intended for manual editing.
3
- version = 3
4
-
5
- [[package]]
6
- name = "nanocom"
7
- version = "0.2.1"
8
-
9
- [[package]]
10
- name = "nanvm-lib"
11
- version = "0.1.0"
12
-
13
- [[package]]
14
- name = "testrust"
15
- version = "0.1.0"
16
- dependencies = [
17
- "nanocom",
18
- ]
package/Cargo.toml DELETED
@@ -1,7 +0,0 @@
1
- [workspace]
2
- resolver = "2"
3
- members = [
4
- "com/rust/nanocom",
5
- "com/test/rust",
6
- "nanvm-lib"
7
- ]
package/com/README.md DELETED
@@ -1,3 +0,0 @@
1
- # COM (Component Object Model)
2
-
3
- Basic Types: `f32`, `f64`, `u8`, `i8`, `u16`, `i16`, `u32`, `i32`, `u64`, `i64`, `usize`, `isize`, `bool`, ``.
package/com/cpp/README.md DELETED
@@ -1,80 +0,0 @@
1
- # COM C++ library
2
-
3
- ## Example
4
-
5
- ### `nanocom` library
6
-
7
- ```cpp
8
- class IUnknown
9
- {
10
- public:
11
- virtual HRESULT QueryInterface(GUID const &riid, IUnknown const **ppvObject) const noexcept = 0;
12
- virtual ULONG AddRef() const noexcept = 0;
13
- virtual ULONG Release() const noexcept = 0;
14
- protected:
15
- IUnknown() {}
16
- private:
17
- IUnknown(IUnknown const&);
18
- IUnknown& operator=(IUnknown const &);
19
- };
20
-
21
- template<class I>
22
- class base: public I
23
- {
24
- public:
25
- HRESULT QueryInterface(GUID const &riid, IUnknown const **ppvObject) const noexcept override { ... }
26
- ULONG AddRef() const noexcept override { ... }
27
- ULONG Release() const noexcept override { ... }
28
- };
29
-
30
- template<class I, class T>
31
- class impl;
32
- ```
33
-
34
- ### Generated
35
-
36
- ```cpp
37
- class IAbc : public IUnknown
38
- {
39
- public:
40
- constexpr static GUID const guid = GUID(...);
41
- virtual IAbc* GetIAbc_() const noexcept = 0;
42
- ref<IAbc> GetIAbc() const noexcept
43
- {
44
- return move_to_ref(GetIAbc_());
45
- }
46
- protected:
47
- IAbc() {}
48
- };
49
-
50
- template<class T>
51
- class impl<IAbc, T> : public base<IAbc>
52
- {
53
- public:
54
- T value;
55
- IAbc* GetIAbc_() const noexcept override
56
- {
57
- return IAbc_GetIAbc(*this).copy_to_ref();
58
- }
59
- template <class... U>
60
- static ref<T> create(U... u)
61
- {
62
- T const *const p = new implementation(u...);
63
- return to_ref(*p);
64
- }
65
- private:
66
- template <class... U>
67
- explicit implementation(U... u) : value(u...) {}
68
- };
69
- ```
70
-
71
- ### Manually Written Code
72
-
73
- ```cpp
74
- struct Abc {};
75
-
76
- ref<IAbc> IAbc_GetIAbc(impl<IAbc, Abc> const & self)
77
- {
78
- return to_ref(self);
79
- }
80
- ```