@tellahq/rescript 10.1.0-alpha.2 → 10.1.4-republish-2

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 (668) hide show
  1. package/CHANGELOG.md +204 -2
  2. package/README.md +1 -1
  3. package/darwinarm64/bsb_helper.exe +0 -0
  4. package/darwinarm64/bsc.exe +0 -0
  5. package/darwinarm64/ninja.exe +0 -0
  6. package/darwinarm64/rescript.exe +0 -0
  7. package/docs/docson/build-schema.json +497 -516
  8. package/lib/4.06.1/bsb_helper.ml +6 -1
  9. package/lib/4.06.1/rescript.ml +1414 -1191
  10. package/lib/4.06.1/whole_compiler.ml +69844 -69069
  11. package/lib/es6/belt_internalBuckets.js +13 -13
  12. package/lib/es6/caml_float.js +5 -5
  13. package/lib/es6/caml_format.js +1 -1
  14. package/lib/es6/caml_int64.js +1 -1
  15. package/lib/es6/caml_obj.js +26 -6
  16. package/lib/es6/complex.js +4 -4
  17. package/lib/es6/js.js +3 -0
  18. package/lib/es6/js_promise2.js +16 -0
  19. package/lib/es6/jsxPPXReactSupport.js +26 -0
  20. package/lib/js/belt_internalBuckets.js +13 -13
  21. package/lib/js/caml_float.js +5 -5
  22. package/lib/js/caml_format.js +1 -1
  23. package/lib/js/caml_int64.js +1 -1
  24. package/lib/js/caml_obj.js +26 -6
  25. package/lib/js/complex.js +4 -4
  26. package/lib/js/js.js +3 -0
  27. package/lib/js/js_promise2.js +14 -0
  28. package/lib/js/jsxPPXReactSupport.js +24 -0
  29. package/package.json +2 -1
  30. package/scripts/buildNinjaBinary.js +29 -0
  31. package/scripts/install.js +7 -3
  32. package/scripts/installUtils.js +9 -1
  33. package/scripts/rescript_arg.js +2 -4
  34. package/scripts/rescript_format.js +73 -39
  35. package/win32/refmt.exe +0 -0
  36. package/darwin/bsb_helper.exe +0 -0
  37. package/darwin/bsc.exe +0 -0
  38. package/darwin/ninja.COPYING +0 -202
  39. package/darwin/ninja.exe +0 -0
  40. package/darwin/rescript.exe +0 -0
  41. package/darwinarm64/ninja.COPYING +0 -202
  42. package/freebsd/ninja.COPYING +0 -202
  43. package/lib/ocaml/arg.cmi +0 -0
  44. package/lib/ocaml/arg.cmt +0 -0
  45. package/lib/ocaml/arg.cmti +0 -0
  46. package/lib/ocaml/arg.ml +0 -359
  47. package/lib/ocaml/arg.mli +0 -185
  48. package/lib/ocaml/array.cmi +0 -0
  49. package/lib/ocaml/array.cmt +0 -0
  50. package/lib/ocaml/array.cmti +0 -0
  51. package/lib/ocaml/array.ml +0 -307
  52. package/lib/ocaml/array.mli +0 -275
  53. package/lib/ocaml/arrayLabels.cmi +0 -0
  54. package/lib/ocaml/arrayLabels.cmt +0 -0
  55. package/lib/ocaml/arrayLabels.cmti +0 -0
  56. package/lib/ocaml/arrayLabels.ml +0 -307
  57. package/lib/ocaml/arrayLabels.mli +0 -276
  58. package/lib/ocaml/belt.cmi +0 -0
  59. package/lib/ocaml/belt.cmt +0 -0
  60. package/lib/ocaml/belt.ml +0 -352
  61. package/lib/ocaml/belt_Array.cmi +0 -0
  62. package/lib/ocaml/belt_Array.cmt +0 -0
  63. package/lib/ocaml/belt_Array.cmti +0 -0
  64. package/lib/ocaml/belt_Array.ml +0 -525
  65. package/lib/ocaml/belt_Array.mli +0 -707
  66. package/lib/ocaml/belt_Float.cmi +0 -0
  67. package/lib/ocaml/belt_Float.cmt +0 -0
  68. package/lib/ocaml/belt_Float.cmti +0 -0
  69. package/lib/ocaml/belt_Float.ml +0 -50
  70. package/lib/ocaml/belt_Float.mli +0 -106
  71. package/lib/ocaml/belt_HashMap.cmi +0 -0
  72. package/lib/ocaml/belt_HashMap.cmt +0 -0
  73. package/lib/ocaml/belt_HashMap.cmti +0 -0
  74. package/lib/ocaml/belt_HashMap.ml +0 -226
  75. package/lib/ocaml/belt_HashMap.mli +0 -436
  76. package/lib/ocaml/belt_HashMapInt.cmi +0 -0
  77. package/lib/ocaml/belt_HashMapInt.cmt +0 -0
  78. package/lib/ocaml/belt_HashMapInt.cmti +0 -0
  79. package/lib/ocaml/belt_HashMapInt.ml +0 -206
  80. package/lib/ocaml/belt_HashMapInt.mli +0 -50
  81. package/lib/ocaml/belt_HashMapString.cmi +0 -0
  82. package/lib/ocaml/belt_HashMapString.cmt +0 -0
  83. package/lib/ocaml/belt_HashMapString.cmti +0 -0
  84. package/lib/ocaml/belt_HashMapString.ml +0 -206
  85. package/lib/ocaml/belt_HashMapString.mli +0 -50
  86. package/lib/ocaml/belt_HashSet.cmi +0 -0
  87. package/lib/ocaml/belt_HashSet.cmt +0 -0
  88. package/lib/ocaml/belt_HashSet.cmti +0 -0
  89. package/lib/ocaml/belt_HashSet.ml +0 -196
  90. package/lib/ocaml/belt_HashSet.mli +0 -125
  91. package/lib/ocaml/belt_HashSetInt.cmi +0 -0
  92. package/lib/ocaml/belt_HashSetInt.cmt +0 -0
  93. package/lib/ocaml/belt_HashSetInt.cmti +0 -0
  94. package/lib/ocaml/belt_HashSetInt.ml +0 -155
  95. package/lib/ocaml/belt_HashSetInt.mli +0 -74
  96. package/lib/ocaml/belt_HashSetString.cmi +0 -0
  97. package/lib/ocaml/belt_HashSetString.cmt +0 -0
  98. package/lib/ocaml/belt_HashSetString.cmti +0 -0
  99. package/lib/ocaml/belt_HashSetString.ml +0 -156
  100. package/lib/ocaml/belt_HashSetString.mli +0 -74
  101. package/lib/ocaml/belt_Id.cmi +0 -0
  102. package/lib/ocaml/belt_Id.cmt +0 -0
  103. package/lib/ocaml/belt_Id.cmti +0 -0
  104. package/lib/ocaml/belt_Id.ml +0 -133
  105. package/lib/ocaml/belt_Id.mli +0 -171
  106. package/lib/ocaml/belt_Int.cmi +0 -0
  107. package/lib/ocaml/belt_Int.cmt +0 -0
  108. package/lib/ocaml/belt_Int.cmti +0 -0
  109. package/lib/ocaml/belt_Int.ml +0 -50
  110. package/lib/ocaml/belt_Int.mli +0 -103
  111. package/lib/ocaml/belt_List.cmi +0 -0
  112. package/lib/ocaml/belt_List.cmt +0 -0
  113. package/lib/ocaml/belt_List.cmti +0 -0
  114. package/lib/ocaml/belt_List.ml +0 -803
  115. package/lib/ocaml/belt_List.mli +0 -844
  116. package/lib/ocaml/belt_Map.cmi +0 -0
  117. package/lib/ocaml/belt_Map.cmt +0 -0
  118. package/lib/ocaml/belt_Map.cmti +0 -0
  119. package/lib/ocaml/belt_Map.ml +0 -170
  120. package/lib/ocaml/belt_Map.mli +0 -496
  121. package/lib/ocaml/belt_MapDict.cmi +0 -0
  122. package/lib/ocaml/belt_MapDict.cmt +0 -0
  123. package/lib/ocaml/belt_MapDict.cmti +0 -0
  124. package/lib/ocaml/belt_MapDict.ml +0 -278
  125. package/lib/ocaml/belt_MapDict.mli +0 -268
  126. package/lib/ocaml/belt_MapInt.cmi +0 -0
  127. package/lib/ocaml/belt_MapInt.cmt +0 -0
  128. package/lib/ocaml/belt_MapInt.cmti +0 -0
  129. package/lib/ocaml/belt_MapInt.ml +0 -169
  130. package/lib/ocaml/belt_MapInt.mli +0 -187
  131. package/lib/ocaml/belt_MapString.cmi +0 -0
  132. package/lib/ocaml/belt_MapString.cmt +0 -0
  133. package/lib/ocaml/belt_MapString.cmti +0 -0
  134. package/lib/ocaml/belt_MapString.ml +0 -169
  135. package/lib/ocaml/belt_MapString.mli +0 -187
  136. package/lib/ocaml/belt_MutableMap.cmi +0 -0
  137. package/lib/ocaml/belt_MutableMap.cmt +0 -0
  138. package/lib/ocaml/belt_MutableMap.cmti +0 -0
  139. package/lib/ocaml/belt_MutableMap.ml +0 -241
  140. package/lib/ocaml/belt_MutableMap.mli +0 -145
  141. package/lib/ocaml/belt_MutableMapInt.cmi +0 -0
  142. package/lib/ocaml/belt_MutableMapInt.cmt +0 -0
  143. package/lib/ocaml/belt_MutableMapInt.cmti +0 -0
  144. package/lib/ocaml/belt_MutableMapInt.ml +0 -172
  145. package/lib/ocaml/belt_MutableMapInt.mli +0 -135
  146. package/lib/ocaml/belt_MutableMapString.cmi +0 -0
  147. package/lib/ocaml/belt_MutableMapString.cmt +0 -0
  148. package/lib/ocaml/belt_MutableMapString.cmti +0 -0
  149. package/lib/ocaml/belt_MutableMapString.ml +0 -172
  150. package/lib/ocaml/belt_MutableMapString.mli +0 -135
  151. package/lib/ocaml/belt_MutableQueue.cmi +0 -0
  152. package/lib/ocaml/belt_MutableQueue.cmt +0 -0
  153. package/lib/ocaml/belt_MutableQueue.cmti +0 -0
  154. package/lib/ocaml/belt_MutableQueue.ml +0 -222
  155. package/lib/ocaml/belt_MutableQueue.mli +0 -116
  156. package/lib/ocaml/belt_MutableSet.cmi +0 -0
  157. package/lib/ocaml/belt_MutableSet.cmt +0 -0
  158. package/lib/ocaml/belt_MutableSet.cmti +0 -0
  159. package/lib/ocaml/belt_MutableSet.ml +0 -371
  160. package/lib/ocaml/belt_MutableSet.mli +0 -617
  161. package/lib/ocaml/belt_MutableSetInt.cmi +0 -0
  162. package/lib/ocaml/belt_MutableSetInt.cmt +0 -0
  163. package/lib/ocaml/belt_MutableSetInt.cmti +0 -0
  164. package/lib/ocaml/belt_MutableSetInt.ml +0 -342
  165. package/lib/ocaml/belt_MutableSetInt.mli +0 -124
  166. package/lib/ocaml/belt_MutableSetString.cmi +0 -0
  167. package/lib/ocaml/belt_MutableSetString.cmt +0 -0
  168. package/lib/ocaml/belt_MutableSetString.cmti +0 -0
  169. package/lib/ocaml/belt_MutableSetString.ml +0 -342
  170. package/lib/ocaml/belt_MutableSetString.mli +0 -124
  171. package/lib/ocaml/belt_MutableStack.cmi +0 -0
  172. package/lib/ocaml/belt_MutableStack.cmt +0 -0
  173. package/lib/ocaml/belt_MutableStack.cmti +0 -0
  174. package/lib/ocaml/belt_MutableStack.ml +0 -106
  175. package/lib/ocaml/belt_MutableStack.mli +0 -63
  176. package/lib/ocaml/belt_Option.cmi +0 -0
  177. package/lib/ocaml/belt_Option.cmt +0 -0
  178. package/lib/ocaml/belt_Option.cmti +0 -0
  179. package/lib/ocaml/belt_Option.ml +0 -93
  180. package/lib/ocaml/belt_Option.mli +0 -270
  181. package/lib/ocaml/belt_Range.cmi +0 -0
  182. package/lib/ocaml/belt_Range.cmt +0 -0
  183. package/lib/ocaml/belt_Range.cmti +0 -0
  184. package/lib/ocaml/belt_Range.ml +0 -76
  185. package/lib/ocaml/belt_Range.mli +0 -114
  186. package/lib/ocaml/belt_Result.cmi +0 -0
  187. package/lib/ocaml/belt_Result.cmt +0 -0
  188. package/lib/ocaml/belt_Result.cmti +0 -0
  189. package/lib/ocaml/belt_Result.ml +0 -75
  190. package/lib/ocaml/belt_Result.mli +0 -205
  191. package/lib/ocaml/belt_Set.cmi +0 -0
  192. package/lib/ocaml/belt_Set.cmt +0 -0
  193. package/lib/ocaml/belt_Set.cmti +0 -0
  194. package/lib/ocaml/belt_Set.cppo.ml +0 -205
  195. package/lib/ocaml/belt_Set.cppo.mli +0 -153
  196. package/lib/ocaml/belt_Set.ml +0 -164
  197. package/lib/ocaml/belt_Set.mli +0 -523
  198. package/lib/ocaml/belt_SetDict.cmi +0 -0
  199. package/lib/ocaml/belt_SetDict.cmt +0 -0
  200. package/lib/ocaml/belt_SetDict.cmti +0 -0
  201. package/lib/ocaml/belt_SetDict.ml +0 -237
  202. package/lib/ocaml/belt_SetDict.mli +0 -567
  203. package/lib/ocaml/belt_SetInt.cmi +0 -0
  204. package/lib/ocaml/belt_SetInt.cmt +0 -0
  205. package/lib/ocaml/belt_SetInt.cmti +0 -0
  206. package/lib/ocaml/belt_SetInt.ml +0 -201
  207. package/lib/ocaml/belt_SetInt.mli +0 -151
  208. package/lib/ocaml/belt_SetString.cmi +0 -0
  209. package/lib/ocaml/belt_SetString.cmt +0 -0
  210. package/lib/ocaml/belt_SetString.cmti +0 -0
  211. package/lib/ocaml/belt_SetString.ml +0 -201
  212. package/lib/ocaml/belt_SetString.mli +0 -151
  213. package/lib/ocaml/belt_SortArray.cmi +0 -0
  214. package/lib/ocaml/belt_SortArray.cmt +0 -0
  215. package/lib/ocaml/belt_SortArray.cmti +0 -0
  216. package/lib/ocaml/belt_SortArray.ml +0 -322
  217. package/lib/ocaml/belt_SortArray.mli +0 -146
  218. package/lib/ocaml/belt_SortArrayInt.cmi +0 -0
  219. package/lib/ocaml/belt_SortArrayInt.cmt +0 -0
  220. package/lib/ocaml/belt_SortArrayInt.cmti +0 -0
  221. package/lib/ocaml/belt_SortArrayInt.ml +0 -263
  222. package/lib/ocaml/belt_SortArrayInt.mli +0 -93
  223. package/lib/ocaml/belt_SortArrayString.cmi +0 -0
  224. package/lib/ocaml/belt_SortArrayString.cmt +0 -0
  225. package/lib/ocaml/belt_SortArrayString.cmti +0 -0
  226. package/lib/ocaml/belt_SortArrayString.ml +0 -263
  227. package/lib/ocaml/belt_SortArrayString.mli +0 -93
  228. package/lib/ocaml/belt_internalAVLset.cmt +0 -0
  229. package/lib/ocaml/belt_internalAVLset.cmti +0 -0
  230. package/lib/ocaml/belt_internalAVLset.ml +0 -665
  231. package/lib/ocaml/belt_internalAVLset.mli +0 -124
  232. package/lib/ocaml/belt_internalAVLtree.cmt +0 -0
  233. package/lib/ocaml/belt_internalAVLtree.cmti +0 -0
  234. package/lib/ocaml/belt_internalAVLtree.ml +0 -762
  235. package/lib/ocaml/belt_internalAVLtree.mli +0 -215
  236. package/lib/ocaml/belt_internalBuckets.cmt +0 -0
  237. package/lib/ocaml/belt_internalBuckets.cmti +0 -0
  238. package/lib/ocaml/belt_internalBuckets.ml +0 -218
  239. package/lib/ocaml/belt_internalBuckets.mli +0 -57
  240. package/lib/ocaml/belt_internalBucketsType.cmt +0 -0
  241. package/lib/ocaml/belt_internalBucketsType.cmti +0 -0
  242. package/lib/ocaml/belt_internalBucketsType.ml +0 -59
  243. package/lib/ocaml/belt_internalBucketsType.mli +0 -46
  244. package/lib/ocaml/belt_internalMapInt.cmt +0 -0
  245. package/lib/ocaml/belt_internalMapInt.ml +0 -227
  246. package/lib/ocaml/belt_internalMapString.cmt +0 -0
  247. package/lib/ocaml/belt_internalMapString.ml +0 -227
  248. package/lib/ocaml/belt_internalSetBuckets.cmt +0 -0
  249. package/lib/ocaml/belt_internalSetBuckets.cmti +0 -0
  250. package/lib/ocaml/belt_internalSetBuckets.ml +0 -157
  251. package/lib/ocaml/belt_internalSetBuckets.mli +0 -47
  252. package/lib/ocaml/belt_internalSetInt.cmt +0 -0
  253. package/lib/ocaml/belt_internalSetInt.ml +0 -129
  254. package/lib/ocaml/belt_internalSetString.cmt +0 -0
  255. package/lib/ocaml/belt_internalSetString.ml +0 -129
  256. package/lib/ocaml/belt_internals.cmti +0 -0
  257. package/lib/ocaml/belt_internals.mli +0 -79
  258. package/lib/ocaml/buffer.cmi +0 -0
  259. package/lib/ocaml/buffer.cmt +0 -0
  260. package/lib/ocaml/buffer.cmti +0 -0
  261. package/lib/ocaml/buffer.ml +0 -250
  262. package/lib/ocaml/buffer.mli +0 -149
  263. package/lib/ocaml/bytes.cmi +0 -0
  264. package/lib/ocaml/bytes.cmt +0 -0
  265. package/lib/ocaml/bytes.cmti +0 -0
  266. package/lib/ocaml/bytes.ml +0 -431
  267. package/lib/ocaml/bytes.mli +0 -430
  268. package/lib/ocaml/bytesLabels.cmi +0 -0
  269. package/lib/ocaml/bytesLabels.cmt +0 -0
  270. package/lib/ocaml/bytesLabels.cmti +0 -0
  271. package/lib/ocaml/bytesLabels.ml +0 -428
  272. package/lib/ocaml/bytesLabels.mli +0 -276
  273. package/lib/ocaml/callback.cmi +0 -0
  274. package/lib/ocaml/callback.cmt +0 -0
  275. package/lib/ocaml/callback.cmti +0 -0
  276. package/lib/ocaml/callback.ml +0 -20
  277. package/lib/ocaml/callback.mli +0 -34
  278. package/lib/ocaml/camlinternalLazy.cmi +0 -0
  279. package/lib/ocaml/camlinternalLazy.cmt +0 -0
  280. package/lib/ocaml/camlinternalLazy.cmti +0 -0
  281. package/lib/ocaml/camlinternalLazy.ml +0 -89
  282. package/lib/ocaml/camlinternalLazy.mli +0 -27
  283. package/lib/ocaml/camlinternalMod.cmi +0 -0
  284. package/lib/ocaml/camlinternalMod.cmt +0 -0
  285. package/lib/ocaml/camlinternalMod.cmti +0 -0
  286. package/lib/ocaml/camlinternalMod.ml +0 -21
  287. package/lib/ocaml/camlinternalMod.mli +0 -25
  288. package/lib/ocaml/char.cmi +0 -0
  289. package/lib/ocaml/char.cmt +0 -0
  290. package/lib/ocaml/char.cmti +0 -0
  291. package/lib/ocaml/char.ml +0 -76
  292. package/lib/ocaml/char.mli +0 -72
  293. package/lib/ocaml/complex.cmi +0 -0
  294. package/lib/ocaml/complex.cmt +0 -0
  295. package/lib/ocaml/complex.cmti +0 -0
  296. package/lib/ocaml/complex.ml +0 -87
  297. package/lib/ocaml/complex.mli +0 -86
  298. package/lib/ocaml/digest.cmi +0 -0
  299. package/lib/ocaml/digest.cmt +0 -0
  300. package/lib/ocaml/digest.cmti +0 -0
  301. package/lib/ocaml/digest.ml +0 -66
  302. package/lib/ocaml/digest.mli +0 -68
  303. package/lib/ocaml/dom.cmi +0 -0
  304. package/lib/ocaml/dom.cmt +0 -0
  305. package/lib/ocaml/dom.ml +0 -296
  306. package/lib/ocaml/dom_storage.cmi +0 -0
  307. package/lib/ocaml/dom_storage.cmt +0 -0
  308. package/lib/ocaml/dom_storage.ml +0 -22
  309. package/lib/ocaml/dom_storage2.cmi +0 -0
  310. package/lib/ocaml/dom_storage2.cmt +0 -0
  311. package/lib/ocaml/dom_storage2.ml +0 -11
  312. package/lib/ocaml/filename.cmi +0 -0
  313. package/lib/ocaml/filename.cmt +0 -0
  314. package/lib/ocaml/filename.cmti +0 -0
  315. package/lib/ocaml/filename.ml +0 -233
  316. package/lib/ocaml/filename.mli +0 -134
  317. package/lib/ocaml/genlex.cmi +0 -0
  318. package/lib/ocaml/genlex.cmt +0 -0
  319. package/lib/ocaml/genlex.cmti +0 -0
  320. package/lib/ocaml/genlex.ml +0 -201
  321. package/lib/ocaml/genlex.mli +0 -73
  322. package/lib/ocaml/hashmap.cppo.ml +0 -214
  323. package/lib/ocaml/hashmap.cppo.mli +0 -54
  324. package/lib/ocaml/hashset.cppo.ml +0 -165
  325. package/lib/ocaml/hashset.cppo.mli +0 -77
  326. package/lib/ocaml/hashtbl.cmi +0 -0
  327. package/lib/ocaml/hashtbl.cmt +0 -0
  328. package/lib/ocaml/hashtbl.cmti +0 -0
  329. package/lib/ocaml/hashtbl.ml +0 -541
  330. package/lib/ocaml/hashtbl.mli +0 -411
  331. package/lib/ocaml/hashtblLabels.cmi +0 -0
  332. package/lib/ocaml/hashtblLabels.cmt +0 -0
  333. package/lib/ocaml/hashtblLabels.ml +0 -130
  334. package/lib/ocaml/int32.cmi +0 -0
  335. package/lib/ocaml/int32.cmt +0 -0
  336. package/lib/ocaml/int32.cmti +0 -0
  337. package/lib/ocaml/int32.ml +0 -64
  338. package/lib/ocaml/int32.mli +0 -186
  339. package/lib/ocaml/int64.cmi +0 -0
  340. package/lib/ocaml/int64.cmt +0 -0
  341. package/lib/ocaml/int64.cmti +0 -0
  342. package/lib/ocaml/int64.ml +0 -72
  343. package/lib/ocaml/int64.mli +0 -197
  344. package/lib/ocaml/internal_map.cppo.ml +0 -230
  345. package/lib/ocaml/internal_set.cppo.ml +0 -134
  346. package/lib/ocaml/js.cmi +0 -0
  347. package/lib/ocaml/js.cmt +0 -0
  348. package/lib/ocaml/js.ml +0 -313
  349. package/lib/ocaml/js_OO.cmi +0 -0
  350. package/lib/ocaml/js_OO.cmt +0 -0
  351. package/lib/ocaml/js_OO.ml +0 -180
  352. package/lib/ocaml/js_array.cmi +0 -0
  353. package/lib/ocaml/js_array.cmt +0 -0
  354. package/lib/ocaml/js_array.ml +0 -970
  355. package/lib/ocaml/js_array2.cmi +0 -0
  356. package/lib/ocaml/js_array2.cmt +0 -0
  357. package/lib/ocaml/js_array2.ml +0 -1065
  358. package/lib/ocaml/js_bigint.cmi +0 -0
  359. package/lib/ocaml/js_bigint.cmt +0 -0
  360. package/lib/ocaml/js_bigint.ml +0 -3
  361. package/lib/ocaml/js_cast.cmi +0 -0
  362. package/lib/ocaml/js_cast.cmt +0 -0
  363. package/lib/ocaml/js_cast.cmti +0 -0
  364. package/lib/ocaml/js_cast.ml +0 -29
  365. package/lib/ocaml/js_cast.mli +0 -45
  366. package/lib/ocaml/js_console.cmi +0 -0
  367. package/lib/ocaml/js_console.cmt +0 -0
  368. package/lib/ocaml/js_console.ml +0 -51
  369. package/lib/ocaml/js_date.cmi +0 -0
  370. package/lib/ocaml/js_date.cmt +0 -0
  371. package/lib/ocaml/js_date.ml +0 -1263
  372. package/lib/ocaml/js_dict.cmi +0 -0
  373. package/lib/ocaml/js_dict.cmt +0 -0
  374. package/lib/ocaml/js_dict.cmti +0 -0
  375. package/lib/ocaml/js_dict.ml +0 -114
  376. package/lib/ocaml/js_dict.mli +0 -152
  377. package/lib/ocaml/js_exn.cmi +0 -0
  378. package/lib/ocaml/js_exn.cmt +0 -0
  379. package/lib/ocaml/js_exn.cmti +0 -0
  380. package/lib/ocaml/js_exn.ml +0 -102
  381. package/lib/ocaml/js_exn.mli +0 -79
  382. package/lib/ocaml/js_float.cmi +0 -0
  383. package/lib/ocaml/js_float.cmt +0 -0
  384. package/lib/ocaml/js_float.ml +0 -294
  385. package/lib/ocaml/js_global.cmi +0 -0
  386. package/lib/ocaml/js_global.cmt +0 -0
  387. package/lib/ocaml/js_global.ml +0 -185
  388. package/lib/ocaml/js_int.cmi +0 -0
  389. package/lib/ocaml/js_int.cmt +0 -0
  390. package/lib/ocaml/js_int.ml +0 -158
  391. package/lib/ocaml/js_json.cmi +0 -0
  392. package/lib/ocaml/js_json.cmt +0 -0
  393. package/lib/ocaml/js_json.cmti +0 -0
  394. package/lib/ocaml/js_json.ml +0 -195
  395. package/lib/ocaml/js_json.mli +0 -244
  396. package/lib/ocaml/js_list.cmi +0 -0
  397. package/lib/ocaml/js_list.cmt +0 -0
  398. package/lib/ocaml/js_list.cmti +0 -0
  399. package/lib/ocaml/js_list.ml +0 -174
  400. package/lib/ocaml/js_list.mli +0 -72
  401. package/lib/ocaml/js_map.cmi +0 -0
  402. package/lib/ocaml/js_map.cmt +0 -0
  403. package/lib/ocaml/js_map.ml +0 -3
  404. package/lib/ocaml/js_mapperRt.cmi +0 -0
  405. package/lib/ocaml/js_mapperRt.cmt +0 -0
  406. package/lib/ocaml/js_mapperRt.cmti +0 -0
  407. package/lib/ocaml/js_mapperRt.ml +0 -50
  408. package/lib/ocaml/js_mapperRt.mli +0 -44
  409. package/lib/ocaml/js_math.cmi +0 -0
  410. package/lib/ocaml/js_math.cmt +0 -0
  411. package/lib/ocaml/js_math.ml +0 -626
  412. package/lib/ocaml/js_null.cmi +0 -0
  413. package/lib/ocaml/js_null.cmt +0 -0
  414. package/lib/ocaml/js_null.cmti +0 -0
  415. package/lib/ocaml/js_null.ml +0 -57
  416. package/lib/ocaml/js_null.mli +0 -87
  417. package/lib/ocaml/js_null_undefined.cmi +0 -0
  418. package/lib/ocaml/js_null_undefined.cmt +0 -0
  419. package/lib/ocaml/js_null_undefined.cmti +0 -0
  420. package/lib/ocaml/js_null_undefined.ml +0 -50
  421. package/lib/ocaml/js_null_undefined.mli +0 -85
  422. package/lib/ocaml/js_obj.cmi +0 -0
  423. package/lib/ocaml/js_obj.cmt +0 -0
  424. package/lib/ocaml/js_obj.ml +0 -100
  425. package/lib/ocaml/js_option.cmi +0 -0
  426. package/lib/ocaml/js_option.cmt +0 -0
  427. package/lib/ocaml/js_option.cmti +0 -0
  428. package/lib/ocaml/js_option.ml +0 -203
  429. package/lib/ocaml/js_option.mli +0 -52
  430. package/lib/ocaml/js_promise.cmi +0 -0
  431. package/lib/ocaml/js_promise.cmt +0 -0
  432. package/lib/ocaml/js_promise.ml +0 -100
  433. package/lib/ocaml/js_re.cmi +0 -0
  434. package/lib/ocaml/js_re.cmt +0 -0
  435. package/lib/ocaml/js_re.ml +0 -184
  436. package/lib/ocaml/js_result.cmi +0 -0
  437. package/lib/ocaml/js_result.cmt +0 -0
  438. package/lib/ocaml/js_result.cmti +0 -0
  439. package/lib/ocaml/js_result.ml +0 -28
  440. package/lib/ocaml/js_result.mli +0 -28
  441. package/lib/ocaml/js_set.cmi +0 -0
  442. package/lib/ocaml/js_set.cmt +0 -0
  443. package/lib/ocaml/js_set.ml +0 -3
  444. package/lib/ocaml/js_string.cmi +0 -0
  445. package/lib/ocaml/js_string.cmt +0 -0
  446. package/lib/ocaml/js_string.ml +0 -914
  447. package/lib/ocaml/js_string2.cmi +0 -0
  448. package/lib/ocaml/js_string2.cmt +0 -0
  449. package/lib/ocaml/js_string2.ml +0 -912
  450. package/lib/ocaml/js_typed_array.cmi +0 -0
  451. package/lib/ocaml/js_typed_array.cmt +0 -0
  452. package/lib/ocaml/js_typed_array.cppo.ml +0 -429
  453. package/lib/ocaml/js_typed_array.ml +0 -1405
  454. package/lib/ocaml/js_typed_array2.cmi +0 -0
  455. package/lib/ocaml/js_typed_array2.cmt +0 -0
  456. package/lib/ocaml/js_typed_array2.cppo.ml +0 -296
  457. package/lib/ocaml/js_typed_array2.ml +0 -1269
  458. package/lib/ocaml/js_types.cmi +0 -0
  459. package/lib/ocaml/js_types.cmt +0 -0
  460. package/lib/ocaml/js_types.cmti +0 -0
  461. package/lib/ocaml/js_types.ml +0 -118
  462. package/lib/ocaml/js_types.mli +0 -78
  463. package/lib/ocaml/js_undefined.cmi +0 -0
  464. package/lib/ocaml/js_undefined.cmt +0 -0
  465. package/lib/ocaml/js_undefined.cmti +0 -0
  466. package/lib/ocaml/js_undefined.ml +0 -59
  467. package/lib/ocaml/js_undefined.mli +0 -92
  468. package/lib/ocaml/js_vector.cmi +0 -0
  469. package/lib/ocaml/js_vector.cmt +0 -0
  470. package/lib/ocaml/js_vector.cmti +0 -0
  471. package/lib/ocaml/js_vector.ml +0 -143
  472. package/lib/ocaml/js_vector.mli +0 -92
  473. package/lib/ocaml/js_weakmap.cmi +0 -0
  474. package/lib/ocaml/js_weakmap.cmt +0 -0
  475. package/lib/ocaml/js_weakmap.ml +0 -3
  476. package/lib/ocaml/js_weakset.cmi +0 -0
  477. package/lib/ocaml/js_weakset.cmt +0 -0
  478. package/lib/ocaml/js_weakset.ml +0 -3
  479. package/lib/ocaml/jsx.cmi +0 -0
  480. package/lib/ocaml/jsx.cmt +0 -0
  481. package/lib/ocaml/jsx.ml +0 -39
  482. package/lib/ocaml/jsxDOM.cmi +0 -0
  483. package/lib/ocaml/jsxDOM.cmt +0 -0
  484. package/lib/ocaml/jsxDOM.ml +0 -2087
  485. package/lib/ocaml/jsxDOMStyle.cmi +0 -0
  486. package/lib/ocaml/jsxDOMStyle.cmt +0 -0
  487. package/lib/ocaml/jsxDOMStyle.ml +0 -777
  488. package/lib/ocaml/jsxEvent.cmi +0 -0
  489. package/lib/ocaml/jsxEvent.cmt +0 -0
  490. package/lib/ocaml/jsxEvent.ml +0 -358
  491. package/lib/ocaml/lazy.cmi +0 -0
  492. package/lib/ocaml/lazy.cmt +0 -0
  493. package/lib/ocaml/lazy.cmti +0 -0
  494. package/lib/ocaml/lazy.ml +0 -70
  495. package/lib/ocaml/lazy.mli +0 -95
  496. package/lib/ocaml/lexing.cmi +0 -0
  497. package/lib/ocaml/lexing.cmt +0 -0
  498. package/lib/ocaml/lexing.cmti +0 -0
  499. package/lib/ocaml/lexing.ml +0 -230
  500. package/lib/ocaml/lexing.mli +0 -172
  501. package/lib/ocaml/list.cmi +0 -0
  502. package/lib/ocaml/list.cmt +0 -0
  503. package/lib/ocaml/list.cmti +0 -0
  504. package/lib/ocaml/list.ml +0 -485
  505. package/lib/ocaml/list.mli +0 -347
  506. package/lib/ocaml/listLabels.cmi +0 -0
  507. package/lib/ocaml/listLabels.cmt +0 -0
  508. package/lib/ocaml/listLabels.cmti +0 -0
  509. package/lib/ocaml/listLabels.ml +0 -485
  510. package/lib/ocaml/listLabels.mli +0 -353
  511. package/lib/ocaml/map.cmi +0 -0
  512. package/lib/ocaml/map.cmt +0 -0
  513. package/lib/ocaml/map.cmti +0 -0
  514. package/lib/ocaml/map.cppo.ml +0 -174
  515. package/lib/ocaml/map.cppo.mli +0 -191
  516. package/lib/ocaml/map.ml +0 -480
  517. package/lib/ocaml/map.mli +0 -315
  518. package/lib/ocaml/mapLabels.cmi +0 -0
  519. package/lib/ocaml/mapLabels.cmt +0 -0
  520. package/lib/ocaml/mapLabels.ml +0 -480
  521. package/lib/ocaml/mapm.cppo.ml +0 -177
  522. package/lib/ocaml/mapm.cppo.mli +0 -138
  523. package/lib/ocaml/moreLabels.cmi +0 -0
  524. package/lib/ocaml/moreLabels.cmt +0 -0
  525. package/lib/ocaml/moreLabels.cmti +0 -0
  526. package/lib/ocaml/moreLabels.ml +0 -22
  527. package/lib/ocaml/moreLabels.mli +0 -198
  528. package/lib/ocaml/node.cmi +0 -0
  529. package/lib/ocaml/node.cmt +0 -0
  530. package/lib/ocaml/node.ml +0 -84
  531. package/lib/ocaml/node_buffer.cmi +0 -0
  532. package/lib/ocaml/node_buffer.cmt +0 -0
  533. package/lib/ocaml/node_buffer.ml +0 -47
  534. package/lib/ocaml/node_child_process.cmi +0 -0
  535. package/lib/ocaml/node_child_process.cmt +0 -0
  536. package/lib/ocaml/node_child_process.ml +0 -50
  537. package/lib/ocaml/node_fs.cmi +0 -0
  538. package/lib/ocaml/node_fs.cmt +0 -0
  539. package/lib/ocaml/node_fs.ml +0 -153
  540. package/lib/ocaml/node_module.cmi +0 -0
  541. package/lib/ocaml/node_module.cmt +0 -0
  542. package/lib/ocaml/node_module.ml +0 -29
  543. package/lib/ocaml/node_path.cmi +0 -0
  544. package/lib/ocaml/node_path.cmt +0 -0
  545. package/lib/ocaml/node_path.ml +0 -71
  546. package/lib/ocaml/node_process.cmi +0 -0
  547. package/lib/ocaml/node_process.cmt +0 -0
  548. package/lib/ocaml/node_process.cmti +0 -0
  549. package/lib/ocaml/node_process.ml +0 -59
  550. package/lib/ocaml/node_process.mli +0 -48
  551. package/lib/ocaml/obj.cmi +0 -0
  552. package/lib/ocaml/obj.cmt +0 -0
  553. package/lib/ocaml/obj.cmti +0 -0
  554. package/lib/ocaml/obj.ml +0 -29
  555. package/lib/ocaml/obj.mli +0 -62
  556. package/lib/ocaml/parsing.cmi +0 -0
  557. package/lib/ocaml/parsing.cmt +0 -0
  558. package/lib/ocaml/parsing.cmti +0 -0
  559. package/lib/ocaml/parsing.ml +0 -212
  560. package/lib/ocaml/parsing.mli +0 -105
  561. package/lib/ocaml/pervasives.cmi +0 -0
  562. package/lib/ocaml/pervasives.cmt +0 -0
  563. package/lib/ocaml/pervasives.cmti +0 -0
  564. package/lib/ocaml/pervasives.ml +0 -297
  565. package/lib/ocaml/pervasives.mli +0 -771
  566. package/lib/ocaml/printexc.cmi +0 -0
  567. package/lib/ocaml/printexc.cmt +0 -0
  568. package/lib/ocaml/printexc.cmti +0 -0
  569. package/lib/ocaml/printexc.ml +0 -79
  570. package/lib/ocaml/printexc.mli +0 -57
  571. package/lib/ocaml/queue.cmi +0 -0
  572. package/lib/ocaml/queue.cmt +0 -0
  573. package/lib/ocaml/queue.cmti +0 -0
  574. package/lib/ocaml/queue.ml +0 -132
  575. package/lib/ocaml/queue.mli +0 -82
  576. package/lib/ocaml/random.cmi +0 -0
  577. package/lib/ocaml/random.cmt +0 -0
  578. package/lib/ocaml/random.cmti +0 -0
  579. package/lib/ocaml/random.ml +0 -273
  580. package/lib/ocaml/random.mli +0 -102
  581. package/lib/ocaml/set.cmi +0 -0
  582. package/lib/ocaml/set.cmt +0 -0
  583. package/lib/ocaml/set.cmti +0 -0
  584. package/lib/ocaml/set.ml +0 -526
  585. package/lib/ocaml/set.mli +0 -266
  586. package/lib/ocaml/setLabels.cmi +0 -0
  587. package/lib/ocaml/setLabels.cmt +0 -0
  588. package/lib/ocaml/setLabels.ml +0 -526
  589. package/lib/ocaml/setm.cppo.ml +0 -346
  590. package/lib/ocaml/setm.cppo.mli +0 -126
  591. package/lib/ocaml/sort.cmi +0 -0
  592. package/lib/ocaml/sort.cmt +0 -0
  593. package/lib/ocaml/sort.cmti +0 -0
  594. package/lib/ocaml/sort.cppo.ml +0 -267
  595. package/lib/ocaml/sort.cppo.mli +0 -96
  596. package/lib/ocaml/sort.ml +0 -99
  597. package/lib/ocaml/sort.mli +0 -44
  598. package/lib/ocaml/stack.cmi +0 -0
  599. package/lib/ocaml/stack.cmt +0 -0
  600. package/lib/ocaml/stack.cmti +0 -0
  601. package/lib/ocaml/stack.ml +0 -44
  602. package/lib/ocaml/stack.mli +0 -63
  603. package/lib/ocaml/stdLabels.cmi +0 -0
  604. package/lib/ocaml/stdLabels.cmt +0 -0
  605. package/lib/ocaml/stdLabels.cmti +0 -0
  606. package/lib/ocaml/stdLabels.ml +0 -24
  607. package/lib/ocaml/stdLabels.mli +0 -29
  608. package/lib/ocaml/stream.cmi +0 -0
  609. package/lib/ocaml/stream.cmt +0 -0
  610. package/lib/ocaml/stream.cmti +0 -0
  611. package/lib/ocaml/stream.ml +0 -213
  612. package/lib/ocaml/stream.mli +0 -108
  613. package/lib/ocaml/string.cmi +0 -0
  614. package/lib/ocaml/string.cmt +0 -0
  615. package/lib/ocaml/string.cmti +0 -0
  616. package/lib/ocaml/string.ml +0 -190
  617. package/lib/ocaml/string.mli +0 -286
  618. package/lib/ocaml/stringLabels.cmi +0 -0
  619. package/lib/ocaml/stringLabels.cmt +0 -0
  620. package/lib/ocaml/stringLabels.cmti +0 -0
  621. package/lib/ocaml/stringLabels.ml +0 -190
  622. package/lib/ocaml/stringLabels.mli +0 -241
  623. package/lib/ocaml/sys.cmi +0 -0
  624. package/lib/ocaml/sys.cmt +0 -0
  625. package/lib/ocaml/sys.cmti +0 -0
  626. package/lib/ocaml/sys.ml +0 -135
  627. package/lib/ocaml/sys.mli +0 -333
  628. package/lib/ocaml/uchar.cmi +0 -0
  629. package/lib/ocaml/uchar.cmt +0 -0
  630. package/lib/ocaml/uchar.cmti +0 -0
  631. package/lib/ocaml/uchar.ml +0 -58
  632. package/lib/ocaml/uchar.mli +0 -98
  633. package/linux/bsb_helper.exe +0 -0
  634. package/linux/bsc.exe +0 -0
  635. package/linux/ninja.COPYING +0 -202
  636. package/linux/ninja.exe +0 -0
  637. package/linux/rescript.exe +0 -0
  638. package/openbsd/.keep +0 -0
  639. package/scripts/LICENSE.ml +0 -27
  640. package/scripts/buckle_lto.js +0 -55
  641. package/scripts/build_sorted.ml +0 -233
  642. package/scripts/caml_oo_curry_gen.ml +0 -71
  643. package/scripts/checkUnused.js +0 -63
  644. package/scripts/ciTest.js +0 -172
  645. package/scripts/cover.sh +0 -3
  646. package/scripts/curry_gen.ml +0 -167
  647. package/scripts/dbg +0 -13
  648. package/scripts/dedupe.js +0 -44
  649. package/scripts/doc_gen.js +0 -117
  650. package/scripts/js_internal_gen.js +0 -135
  651. package/scripts/jsconfig.json +0 -12
  652. package/scripts/littlecase.js +0 -21
  653. package/scripts/ninja.js +0 -1980
  654. package/scripts/pack.js +0 -107
  655. package/scripts/prebuilt.js +0 -99
  656. package/scripts/release.js +0 -41
  657. package/scripts/repl.js +0 -151
  658. package/scripts/shake.js +0 -138
  659. package/scripts/tasks.js +0 -149
  660. package/scripts/test.sh +0 -3
  661. package/scripts/tmp.js +0 -98
  662. package/scripts/validate.js +0 -41
  663. package/vendor/ninja.tar.gz +0 -0
  664. package/win32/bsb_helper.exe +0 -0
  665. package/win32/bsc.exe +0 -0
  666. package/win32/ninja.COPYING +0 -202
  667. package/win32/ninja.exe +0 -0
  668. package/win32/rescript.exe +0 -0
@@ -1,707 +0,0 @@
1
- (***********************************************************************)
2
- (* *)
3
- (* OCaml *)
4
- (* *)
5
- (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
6
- (* *)
7
- (* Copyright 1996 Institut National de Recherche en Informatique et *)
8
- (* en Automatique. All rights reserved. This file is distributed *)
9
- (* under the terms of the GNU Library General Public License, with *)
10
- (* the special exception on linking described in file ../LICENSE. *)
11
- (* *)
12
- (***********************************************************************)
13
- (* Adapted significantly by Authors of ReScript *)
14
-
15
-
16
- (** Utililites for `Array` functions.
17
-
18
- ### Note about index syntax
19
-
20
- Code like `arr[0]` does *not* compile to JavaScript `arr[0]`. Reason transforms the `[]` index syntax into a function: `Array.get(arr, 0)`. By default, this uses the default standard library's `Array.get` function, which may raise an exception if the index isn't found. If you `open Belt`, it will use the `Belt.Array.get` function which returns options instead of raising exceptions. [See this for more information](../belt.mdx#array-access-runtime-safety).
21
- *)
22
-
23
- type 'a t = 'a array
24
-
25
- external length: 'a t -> int = "%array_length"
26
- (** return the size of the array
27
-
28
- ```res example
29
- // Returns 1
30
- Belt.Array.length(["test"])
31
- ```
32
- *)
33
-
34
- external size: 'a t -> int = "%array_length"
35
- (** **See** [`length`]() *)
36
-
37
- val get: 'a t -> int -> 'a option
38
- (**
39
- If `i <= 0 <= length(arr)` returns `Some(value)` where `value` is the item at index `i`.
40
- If `i` is out of range returns `None`.
41
- ```
42
- Belt.Array.get(["a", "b", "c"], 0) == Some("a")
43
- Belt.Array.get(["a", "b", "c"], 3) == None
44
- Belt.Array.get(["a", "b", "c"], -1) == None
45
- ```
46
- *)
47
-
48
- val getExn: 'a t -> int -> 'a
49
- (**
50
- Raise an exception if `i` is out of range.
51
- Otherwise return the value at index `i` in `arr`.
52
- *)
53
-
54
- external getUnsafe: 'a t -> int -> 'a = "%array_unsafe_get"
55
- (**
56
- `getUnsafe(arr, i)`
57
-
58
- **Unsafe**
59
-
60
- no bounds checking; this would cause type error if `i` does not stay within range
61
- *)
62
-
63
- external getUndefined: 'a t -> int -> 'a Js.undefined = "%array_unsafe_get"
64
- (**
65
- `getUndefined(arr, i)`
66
-
67
- It does the samething in the runtime as [`getUnsafe`]();
68
- it is _type safe_ since the return type still track whether it is
69
- in range or not
70
- *)
71
-
72
- val set: 'a t -> int -> 'a -> bool
73
- (**
74
- `set(arr, n, x)` modifies `arr` in place; it replaces the nth element of `arr` with `x`.
75
- Returning `false` means not updated due to out of range.
76
- *)
77
-
78
- val setExn: 'a t -> int -> 'a -> unit
79
- (**
80
- `setExn(arr, i, x)` raise an exception if `i` is out of range.
81
- *)
82
-
83
- external setUnsafe: 'a t -> int -> 'a -> unit = "%array_unsafe_set"
84
-
85
- val shuffleInPlace: 'a t -> unit
86
- (** `shuffleInPlace(arr)` randomly re-orders the items in `arr` *)
87
-
88
- val shuffle: 'a t -> 'a t
89
- (** Returns a fresh array with items in original array randomly shuffled. *)
90
-
91
- val reverseInPlace: 'a t -> unit
92
- (**
93
- `reverseInPlace(arr)` reverses items in `arr` in place.
94
-
95
- ```res example
96
- let arr = [10, 11, 12, 13, 14]
97
-
98
- let () = Belt.Array.reverseInPlace(arr)
99
-
100
- arr == [14, 13, 12, 11, 10]
101
- ```
102
- *)
103
-
104
- val reverse: 'a t -> 'a t
105
- (**
106
- `reverse(arr)` returns a fresh array with items in arr in reverse order.
107
-
108
- ```res example
109
- Belt.Array.reverse([10, 11, 12, 13, 14]) == [14, 13, 12, 11, 10]
110
- ```
111
- *)
112
-
113
- external makeUninitialized: int -> 'a Js.undefined array = "Array" [@@bs.new]
114
- (**
115
- `makeUninitialized(n)` creates an array of length `n` filled with the undefined value. You must specify the type of data that will eventually fill the array.
116
-
117
- ```res example
118
- let arr: array<Js.undefined<string>> = Belt.Array.makeUninitialized(5)
119
-
120
- Belt.Array.getExn(arr, 0) == Js.undefined
121
- ```
122
- *)
123
-
124
- external makeUninitializedUnsafe: int -> 'a t = "Array" [@@bs.new]
125
- (**
126
- **Unsafe**
127
-
128
- ```res example
129
- let arr = Belt.Array.makeUninitializedUnsafe(5)
130
-
131
- Js.log(Belt.Array.getExn(arr, 0)) // undefined
132
-
133
- Belt.Array.setExn(arr, 0, "example")
134
-
135
- Js.log(Belt.Array.getExn(arr, 0) == "example")
136
- ```
137
- *)
138
-
139
-
140
- val make: int -> 'a -> 'a t
141
- (**
142
- `make(n, e)` return an array of size `n` filled with value `e`.
143
- Returns an empty array when `n` is negative.
144
- *)
145
-
146
- val range: int -> int -> int array
147
- (**
148
- `range(start, finish)` create an inclusive array.
149
-
150
- ```res example
151
- Belt.Array.range(0, 3) == [0, 1, 2, 3]
152
-
153
- Belt.Array.range(3, 0) == []
154
-
155
- Belt.Array.range(3, 3) == [3]
156
- ```
157
- *)
158
-
159
- val rangeBy: int -> int -> step:int -> int array
160
- (**
161
- `rangeBy(start, finish, ~step)`
162
-
163
- Returns empty array when step is 0 or negative. It also return an empty array when `start > finish`.
164
-
165
- ```res example
166
- Belt.Array.rangeBy(0, 10, ~step=3) == [0, 3, 6, 9]
167
-
168
- Belt.Array.rangeBy(0, 12, ~step=3) == [0, 3, 6, 9, 12]
169
-
170
- Belt.Array.rangeBy(33, 0, ~step=1) == []
171
-
172
- Belt.Array.rangeBy(33, 0, ~step=-1) == []
173
-
174
- Belt.Array.rangeBy(3, 12, ~step=-1) == []
175
-
176
- Belt.Array.rangeBy(3, 3, ~step=0) == []
177
-
178
- Belt.Array.rangeBy(3, 3, ~step=1) == [3]
179
- ```
180
- *)
181
-
182
- val makeByU: int -> (int -> 'a [@bs]) -> 'a t
183
- val makeBy: int -> (int -> 'a ) -> 'a t
184
- (**
185
- `makeBy(n, f)`
186
-
187
- Return an empty array when n is negative return an array of size n populated by `f(i)` start from `0` to `n - 1`.
188
-
189
- ```res example
190
- Belt.Array.makeBy(5, (i) => i) == [0, 1, 2, 3, 4]
191
-
192
- Belt.Array.makeBy(5, (i) => i * i) == [0, 1, 4, 9, 16]
193
- ```
194
- *)
195
-
196
- val makeByAndShuffleU: int -> (int -> 'a [@bs]) -> 'a t
197
- val makeByAndShuffle: int -> (int -> 'a ) -> 'a t
198
- (**
199
- Equivalent to `shuffle(makeBy(n, f))`
200
- *)
201
-
202
-
203
- val zip: 'a t -> 'b array -> ('a * 'b) array
204
- (**
205
- `zip(a, b)`
206
-
207
- Create an array of pairs from corresponding elements of a and b. Stop with the shorter array.
208
-
209
- ```res example
210
- Belt.Array.zip([1, 2], [3, 4, 5]) == [(1, 3), (2, 4)]
211
- ```
212
- *)
213
-
214
-
215
- val zipByU: 'a t -> 'b array -> ('a -> 'b -> 'c [@bs]) -> 'c array
216
- val zipBy: 'a t -> 'b array -> ('a -> 'b -> 'c ) -> 'c array
217
- (**
218
- `zipBy(xs, ys, f)`
219
-
220
- Create an array by applying `f` to corresponding elements of `xs` and `ys`. Stops with shorter array.
221
-
222
- Equivalent to `map(zip(xs, ys), ((a, b)) => f(a, b))`
223
-
224
- ```res example
225
- Belt.Array.zipBy([1, 2, 3], [4, 5], (a, b) => 2 * a + b) == [6, 9]
226
- ```
227
- *)
228
-
229
- val unzip: ('a * 'b) array -> 'a t * 'b array
230
- (**
231
- `unzip(a)` takes an array of pairs and creates a pair of arrays. The first array contains all the first items of the pairs; the second array contains all the second items.
232
-
233
- ```res example
234
- Belt.Array.unzip([(1, 2), (3, 4)]) == ([1, 3], [2, 4])
235
-
236
- Belt.Array.unzip([(1, 2), (3, 4), (5, 6), (7, 8)]) == ([1, 3, 5, 7], [2, 4, 6, 8])
237
- ```
238
- *)
239
-
240
- val concat: 'a t -> 'a t -> 'a t
241
- (**
242
- `concat(xs, ys)`
243
-
244
- Returns a fresh array containing the concatenation of the arrays `v1` and `v2`;so even if `v1` or `v2` is empty; it can not be shared
245
-
246
- ```res example
247
- Belt.Array.concat([1, 2, 3], [4, 5]) == [1, 2, 3, 4, 5]
248
-
249
- Belt.Array.concat([], ["a", "b", "c"]) == ["a", "b", "c"]
250
- ```
251
- *)
252
-
253
- val concatMany: 'a t array -> 'a t
254
- (**
255
- `concatMany(xss)`
256
-
257
- Returns a fresh array as the concatenation of `xss` (an array of arrays)
258
-
259
- ```res example
260
- Belt.Array.concatMany([[1, 2, 3], [4, 5, 6], [7, 8]]) == [1, 2, 3, 4, 5, 6, 7, 8]
261
- ```
262
- *)
263
-
264
- val slice: 'a t -> offset:int -> len:int -> 'a t
265
- (**
266
- `slice(xs, offset, len)` creates a new array with the len elements of `xs`
267
- starting at `offset` for `offset` can be negative;and is evaluated as
268
- `length(xs) - offset(slice, xs) - 1(1)` means get the last element as a
269
- singleton array `slice(xs, ~-len, len)` will return a copy of the array if the
270
- array does not have enough data; `slice` extracts through the end of sequence.
271
-
272
- if `len` is negative; returns the empty array.
273
-
274
- ```res example
275
- Belt.Array.slice([10, 11, 12, 13, 14, 15, 16], ~offset=2, ~len=3) == [12, 13, 14]
276
-
277
- Belt.Array.slice([10, 11, 12, 13, 14, 15, 16], ~offset=-4, ~len=3) == [13, 14, 15]
278
-
279
- Belt.Array.slice([10, 11, 12, 13, 14, 15, 16], ~offset=4, ~len=9) == [14, 15, 16]
280
- ```
281
- *)
282
-
283
- val sliceToEnd: 'a t -> int -> 'a t
284
- (**
285
- `sliceToEnd(xs, offset)` creates a new array with the elements of `xs` starting at `offset`
286
-
287
- `offset` can be negative; and is evaluated as `length(xs) - offset(sliceToEnd, xs) - 1` means get the last element as a singleton array
288
-
289
- `sliceToEnd(xs, 0)` will return a copy of the array
290
-
291
- ```res example
292
- Belt.Array.sliceToEnd([10, 11, 12, 13, 14, 15, 16], 2) == [12, 13, 14, 15, 16]
293
-
294
- Belt.Array.sliceToEnd([10, 11, 12, 13, 14, 15, 16], -4) == [13, 14, 15, 16]
295
- ```
296
- *)
297
-
298
-
299
- external copy : 'a t -> (_ [@bs.as 0]) -> 'a t = "slice" [@@bs.send]
300
- (**
301
- `copy(a)`
302
-
303
- Returns a copy of a; that is; a fresh array containing the same elements as a.
304
- *)
305
-
306
- val fill: 'a t -> offset:int -> len:int -> 'a -> unit
307
- (**
308
- `fill(arr, ~offset, ~len, x)`
309
-
310
- Modifies `arr` in place, storing `x` in elements number `offset` to `offset + len - 1`.
311
- `offset` can be negative; and is evaluated as `length(arr - offset)`
312
-
313
- `fill(arr, ~offset=-1, ~len=1)` means fill the last element, if the array does not have enough data; `fill` will ignore it
314
-
315
- ```res example
316
- let arr = Belt.Array.makeBy(5, (i) => i)
317
-
318
- Belt.Array.fill(arr, ~offset=2, ~len=2, 9)
319
-
320
- arr == [0, 1, 9, 9, 4]
321
-
322
- Belt.Array.fill(arr, ~offset=7, ~len=2, 8)
323
-
324
- arr == [0, 1, 9, 9, 4]
325
- *)
326
-
327
- val blit:
328
- src:'a t -> srcOffset:int -> dst:'a t -> dstOffset:int -> len:int -> unit
329
- (**
330
- `blit(~src=v1, ~srcOffset=o1, ~dst=v2, ~dstOffset=o2, ~len)`
331
-
332
- copies `len` elements from array `v1`;starting at element number `o1`;to array `v2`, starting at element number `o2`.
333
-
334
- It works correctly even if `v1` and `v2` are the same array;and the source and destination chunks overlap.
335
-
336
- `offset` can be negative; `-1` means `len - 1`; if `len + offset` is still negative;it will be set as 0
337
-
338
- For each of the examples;presume that `v1 == [10, 11, 12, 13, 14, 15, 16, 17]` and `v2 == [20, 21, 22, 23, 24, 25, 26, 27]`. The result shown is the content of the destination array.
339
-
340
- ```res example
341
- let v1 = [10, 11, 12, 13, 14, 15, 16, 17]
342
- let v2 = [20, 21, 22, 23, 24, 25, 26, 27]
343
-
344
- Belt.Array.blit(~src=v1, ~srcOffset=4, ~dst=v2, ~dstOffset=2, ~len=3)
345
- v2 == [20, 21, 14, 15, 16, 25, 26, 27]
346
-
347
- Belt.Array.blit(~src=v1, ~srcOffset=4, ~dst=v1, ~dstOffset=2, ~len=3)
348
- v1 == [10, 11, 14, 15, 16, 15, 16, 17]
349
- ```
350
- *)
351
-
352
- val blitUnsafe:
353
- src:'a t -> srcOffset:int -> dst:'a t -> dstOffset:int -> len:int -> unit
354
- (**
355
- Unsafe blit without bounds checking.
356
- *)
357
-
358
- val forEachU: 'a t -> ('a -> unit [@bs]) -> unit
359
- val forEach: 'a t -> ('a -> unit ) -> unit
360
- (**
361
- `forEach(xs, f)`
362
-
363
- Call `f` on each element of `xs` from the beginning to end. `f` returns `unit`;so no new array is created. Use `forEach` when you are primarily concerned with repetitively creating side effects.
364
-
365
- ```res example
366
- Belt.Array.forEach(["a", "b", "c"], x => Js.log("Item: " ++ x))
367
-
368
- /*
369
- prints:
370
- Item: a
371
- Item: b
372
- Item: c
373
- */
374
- let total = ref(0)
375
-
376
- Belt.Array.forEach([1, 2, 3, 4], x => total := total.contents + x)
377
-
378
- total.contents == 1 + 2 + 3 + 4
379
- ```
380
- *)
381
-
382
- val mapU: 'a t -> ('a -> 'b [@bs]) -> 'b array
383
- val map: 'a t -> ('a -> 'b ) -> 'b array
384
- (**
385
- `map(xs, f)`
386
-
387
- Returns a new array by calling `f` for each element of `xs` from the beginning to end.
388
-
389
- ```res example
390
- Belt.Array.map([1, 2], (x) => x + 1) == [3, 4]
391
- ```
392
- *)
393
-
394
- val flatMapU: 'a t -> ('a -> 'b array [@bs]) -> 'b array
395
- val flatMap: 'a t -> ('a -> 'b array) -> 'b array
396
- (**
397
- `flatMap(xs, f)`
398
-
399
- **Returns** a new array by calling `f` for each element of `xs` from
400
- the beginning to end, concatenating the results.
401
-
402
- ```res example
403
- flatMap([1, 2], x => [x + 10, x + 20]) == [11, 21, 12, 22]
404
- ```
405
- *)
406
-
407
- val getByU: 'a t -> ('a -> bool [@bs]) -> 'a option
408
- val getBy: 'a t -> ('a -> bool) -> 'a option
409
- (**
410
- `getBy(xs, p)`
411
-
412
- Returns `Some(value)` for the first value in `xs` that satisifies the predicate function `p`; returns `None` if no element satisifies the function.
413
-
414
- ```res example
415
- Belt.Array.getBy([1, 4, 3, 2], (x) => mod(x, 2) == 0) == Some(4)
416
- Belt.Array.getBy([15, 13, 11], (x) => mod(x, 2) == 0) == None
417
- ```
418
- *)
419
-
420
- val getIndexByU: 'a t -> ('a -> bool [@bs]) -> int option
421
- val getIndexBy: 'a t -> ('a -> bool) -> int option
422
- (**
423
- `getIndexBy(xs, p)` returns `Some(index)` for the first value in `xs` that satisifies the predicate function `p`;
424
- returns `None` if no element satisifies the function.
425
-
426
- ```res example
427
- Belt.Array.getIndexBy([1, 4, 3, 2], (x) => mod(x, 2) == 0) == Some(1)
428
- Belt.Array.getIndexBy([15, 13, 11], (x) => mod(x, 2) == 0) == None
429
- ```
430
- *)
431
-
432
- val keepU: 'a t -> ('a -> bool [@bs]) -> 'a t
433
- val keep: 'a t -> ('a -> bool ) -> 'a t
434
- (**
435
- `keep(xs, p)` returns a new array that keep all elements satisfy `p`.
436
- *)
437
-
438
- val keepWithIndexU: 'a t -> ('a -> int -> bool [@bs]) -> 'a t
439
- val keepWithIndex: 'a t -> ('a -> int -> bool ) -> 'a t
440
- (**
441
- `keepWithIndex(xs, p)`
442
-
443
- Returns a new array that keep all elements satisfy `p`.
444
-
445
- ```res example
446
- Belt.Array.keepWithIndex([1, 2, 3], (_x, i) => i == 1) == [2]
447
- ```
448
- *)
449
-
450
- val keepMapU: 'a t -> ('a -> 'b option [@bs]) -> 'b array
451
- val keepMap: 'a t -> ('a -> 'b option) -> 'b array
452
- (**
453
- `keepMap(xs, p)`
454
-
455
- Returns a new array that keep all elements that return a non-None applied `p`.
456
-
457
- ```res example
458
- Belt.Array.keepMap([1, 2, 3], x =>
459
- if mod(x, 2) == 0 {
460
- Some(x)
461
- } else {
462
- None
463
- }
464
- )
465
- == [2]
466
- ```
467
- *)
468
-
469
- val forEachWithIndexU: 'a t -> (int -> 'a -> unit [@bs]) -> unit
470
- val forEachWithIndex: 'a t -> (int -> 'a -> unit ) -> unit
471
- (**
472
- `forEachWithIndex(xs, f)`
473
-
474
- The same as `Belt.Array.forEach`;
475
- except that `f` is supplied two arguments: the index starting from 0 and the element from `xs`.
476
-
477
- ```res example
478
- Belt.Array.forEachWithIndex(["a", "b", "c"], (i, x) => Js.log("Item " ++ Belt.Int.toString(i) ++ " is " ++ x))
479
-
480
- /*
481
- prints:
482
- Item 0 is a
483
- Item 1 is b
484
- Item 2 is cc
485
- */
486
- let total = ref(0)
487
-
488
- Belt.Array.forEachWithIndex([10, 11, 12, 13], (i, x) => total := total.contents + x + i)
489
-
490
- total.contents == 0 + 10 + 1 + 11 + 2 + 12 + 3 + 13
491
- ```
492
- *)
493
-
494
- val mapWithIndexU: 'a t -> (int -> 'a -> 'b [@bs]) -> 'b array
495
- val mapWithIndex: 'a t -> (int -> 'a -> 'b ) -> 'b array
496
- (**
497
- `mapWithIndex(xs, f)`
498
-
499
- `mapWithIndex(xs, f)` applies `f` to each element of `xs`. Function `f` takes two arguments: the index starting from 0 and the element from `xs`.
500
-
501
- ```res example
502
- Belt.Array.mapWithIndex([1, 2, 3], (i, x) => i + x) == [0 + 1, 1 + 2, 2 + 3]
503
- ```
504
- *)
505
-
506
-
507
- val partitionU : 'a t -> ('a -> bool [@bs]) -> 'a t * 'a t
508
- val partition : 'a t -> ('a -> bool) -> 'a t * 'a t
509
- (**
510
- `partition(f, a)` split array into tuple of two arrays based on predicate `f`; first of tuple where predicate cause true, second where predicate cause false
511
-
512
- ```res example
513
- Belt.Array.partition([1, 2, 3, 4, 5], (x) => mod(x, 2) == 0) == ([2, 4], [1, 3, 5])
514
-
515
- Belt.Array.partition([1, 2, 3, 4, 5], (x) => mod(x, 2) != 0) == ([1, 3, 5], [2, 4])
516
- ```
517
- *)
518
-
519
- val reduceU: 'b array -> 'a -> ('a -> 'b -> 'a [@bs]) ->'a
520
- val reduce: 'b array -> 'a -> ('a -> 'b -> 'a ) ->'a
521
- (**
522
- `reduce(xs, init, f)`
523
-
524
- Applies `f` to each element of `xs` from beginning to end. Function `f` has two parameters: the item from the list and an “accumulator”; which starts with a value of `init`. `reduce` returns the final value of the accumulator.
525
-
526
- ```res example
527
- Belt.Array.reduce([2, 3, 4], 1, (a, b) => a + b) == 10
528
-
529
- Belt.Array.reduce(["a", "b", "c", "d"], "", (a, b) => a ++ b) == "abcd"
530
- ```
531
- *)
532
-
533
- val reduceReverseU: 'b array -> 'a -> ('a -> 'b -> 'a [@bs]) -> 'a
534
- val reduceReverse: 'b array -> 'a -> ('a -> 'b -> 'a ) -> 'a
535
- (**
536
- `reduceReverse(xs, init, f)`
537
-
538
- Works like `Belt_Array.reduce`; except that function `f` is applied to each item of `xs` from the last back to the first.
539
-
540
- ```res example
541
- Belt.Array.reduceReverse(["a", "b", "c", "d"], "", (a, b) => a ++ b) == "dcba"
542
- ```
543
- *)
544
-
545
- val reduceReverse2U:
546
- 'a t -> 'b array -> 'c -> ('c -> 'a -> 'b -> 'c [@bs]) -> 'c
547
- val reduceReverse2:
548
- 'a t -> 'b array -> 'c -> ('c -> 'a -> 'b -> 'c) -> 'c
549
- (**
550
- `reduceReverse2(xs, ys, init, f)`
551
-
552
- Reduces two arrays xs and ys;taking items starting at `min(length(xs), length(ys))` down to and including zero.
553
-
554
- ```res example
555
- Belt.Array.reduceReverse2([1, 2, 3], [1, 2], 0, (acc, x, y) => acc + x + y) == 6
556
- ```
557
- *)
558
-
559
- val reduceWithIndexU: 'a t -> 'b -> ('b -> 'a -> int -> 'b [@bs]) -> 'b
560
- val reduceWithIndex: 'a t -> 'b -> ('b -> 'a -> int -> 'b) -> 'b
561
- (**
562
- Applies `f` to each element of `xs` from beginning to end. Function `f` has three parameters: the item from the array and an “accumulator”, which starts with a value of `init` and the index of each element. `reduceWithIndex` returns the final value of the accumulator.
563
-
564
- ```res example
565
- Belt.Array.reduceWithIndex([1, 2, 3, 4], 0, (acc, x, i) => acc + x + i) == 16
566
- ```
567
- *)
568
-
569
- val joinWithU: 'a t -> string -> ('a -> string [@bs]) -> string
570
- val joinWith: 'a t -> string -> ('a -> string) -> string
571
- (**
572
- `joinWith(xs, sep, toString)`
573
-
574
- Concatenates all the elements of `xs` converted to string with `toString`, each separated by `sep`, the string
575
- given as the second argument, into a single string.
576
- If the array has only one element, then that element will be returned
577
- without using the separator.
578
- If the array is empty, the empty string will be returned.
579
-
580
- ```res example
581
- joinWith([0, 1], ", ", string_of_int) == "0, 1"
582
- joinWith([], " ", string_of_int) == ""
583
- joinWith([1], " ", string_of_int) == "1"
584
- ```
585
- *)
586
-
587
- val someU: 'a t -> ('a -> bool [@bs]) -> bool
588
- val some: 'a t -> ('a -> bool) -> bool
589
- (**
590
- `some(xs, p)`
591
-
592
- Returns true if at least one of the elements in `xs` satifies `p`; where `p` is a predicate: a function taking an element and returning a `bool`.
593
-
594
- ```res example
595
- Belt.Array.some([2, 3, 4], (x) => mod(x, 2) == 1) == true
596
-
597
- Belt.Array.some([(-1), (-3), (-5)], (x) => x > 0) == false
598
- ```
599
- *)
600
-
601
- val everyU: 'a t -> ('a -> bool [@bs]) -> bool
602
- val every: 'a t -> ('a -> bool ) -> bool
603
- (**
604
- `every(xs, p)`
605
-
606
- Returns `true` if all elements satisfy `p`; where `p` is a predicate: a function taking an element and returning a `bool`.
607
-
608
- ```res example
609
- Belt.Array.every([1, 3, 5], (x) => mod(x, 2) == 1) == true
610
-
611
- Belt.Array.every([1, (-3), 5], (x) => x > 0) == false
612
- ```
613
- *)
614
-
615
- val every2U: 'a t -> 'b array -> ('a -> 'b -> bool [@bs]) -> bool
616
- val every2: 'a t -> 'b array -> ('a -> 'b -> bool ) -> bool
617
- (**
618
- `every2(xs, ys, p)`
619
-
620
- returns true if `p(xi, yi)` is true for all pairs of elements up to the shorter length (i.e. `min(length(xs), length(ys))`)
621
-
622
- ```res example
623
- Belt.Array.every2([1, 2, 3], [0, 1], (a, b) => a > b) == true
624
-
625
- Belt.Array.every2([], [1], (x, y) => x > y) == true
626
-
627
- Belt.Array.every2([2, 3], [1], (x, y) => x > y) == true
628
-
629
- Belt.Array.every2([0, 1], [5, 0], (x, y) => x > y) == false
630
- ```
631
- *)
632
-
633
- val some2U: 'a t -> 'b array -> ('a -> 'b -> bool [@bs]) -> bool
634
- val some2: 'a t -> 'b array -> ('a -> 'b -> bool ) -> bool
635
- (**
636
- `some2(xs, ys, p)`
637
-
638
- returns true if `p(xi, yi)` is true for any pair of elements up to the shorter length (i.e. `min(length(xs), length(ys))`)
639
-
640
- ```res example
641
- Belt.Array.some2([0, 2], [1, 0, 3], (a, b) => a > b) == true
642
-
643
- Belt.Array.some2([], [1], (x, y) => x > y) == false
644
-
645
- Belt.Array.some2([2, 3], [1, 4], (x, y) => x > y) == true
646
- ```
647
- *)
648
-
649
- val cmpU: 'a t -> 'a t -> ('a -> 'a -> int [@bs]) -> int
650
- val cmp: 'a t -> 'a t -> ('a -> 'a -> int ) -> int
651
- (**
652
- `cmp(xs, ys, f)`
653
-
654
- Compared by length if `length(xs) != length(ys)`; returning -1 if `length(xs) < length(ys)` or 1 if `length(xs) > length(ys)`
655
- Otherwise compare one by one `f(x, y)`. `f` returns
656
- a negative number if `x` is “less than” `y`
657
- zero if `x` is “equal to” `y`
658
- a positive number if `x` is “greater than” `y`
659
- The comparison returns the first non-zero result of `f`;or zero if `f` returns zero for all `x` and `y`.
660
-
661
- ```res example
662
- Belt.Array.cmp([1, 3, 5], [1, 4, 2], (a, b) => compare(a, b)) == -1
663
-
664
- Belt.Array.cmp([1, 3, 5], [1, 2, 3], (a, b) => compare(a, b)) == 1
665
-
666
- Belt.Array.cmp([1, 3, 5], [1, 3, 5], (a, b) => compare(a, b)) == 0
667
- ```
668
- *)
669
-
670
- val eqU: 'a t -> 'a t -> ('a -> 'a -> bool [@bs]) -> bool
671
- val eq: 'a t -> 'a t -> ('a -> 'a -> bool ) -> bool
672
- (**
673
- `eq(xs, ys)`
674
-
675
- return false if length is not the same
676
- otherwise compare items one by one using `f(xi, yi)`; and return true if all results are truefalse otherwise
677
-
678
- ```res example
679
- Belt.Array.eq([1, 2, 3], [(-1), (-2), (-3)], (a, b) => abs(a) == abs(b)) == true
680
- ```
681
- *)
682
-
683
- external truncateToLengthUnsafe: 'a t -> int -> unit = "length" [@@bs.set]
684
- (**
685
- Unsafe `truncateToLengthUnsafe(xs, n)` sets length of array `xs` to `n`.
686
-
687
- If `n` is greater than the length of `xs`; the extra elements are set to `Js.Null_undefined.null`.
688
-
689
- If `n` is less than zero; raises a `RangeError`.
690
-
691
- ```res example
692
- let arr = ["ant", "bee", "cat", "dog", "elk"]
693
-
694
- Belt.Array.truncateToLengthUnsafe(arr, 3)
695
-
696
- arr == ["ant", "bee", "cat"]
697
- ```
698
- *)
699
-
700
-
701
- val initU : int -> (int -> 'a [@bs]) -> 'a t
702
- val init : int -> (int -> 'a) -> 'a t
703
-
704
- (**
705
- `arr->push(item)` pushes an element `item` into an array `arr`.
706
- *)
707
- external push : 'a t -> 'a -> unit = "push" [@@send]
Binary file
Binary file
Binary file