@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,617 +0,0 @@
1
-
2
- (* Copyright (C) 2017 Authors of ReScript
3
- *
4
- * This program is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU Lesser General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * In addition to the permissions granted to you by the LGPL, you may combine
10
- * or link a "work that uses the Library" with a publicly distributed version
11
- * of this file to produce a combined library or application, then distribute
12
- * that combined work under the terms of your choosing, with no requirement
13
- * to comply with the obligations normally placed on you by section 4 of the
14
- * LGPL version 3 (or the corresponding section of a later version of the LGPL
15
- * should you choose to use a later version).
16
- *
17
- * This program is distributed in the hope that it will be useful,
18
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
19
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
- * GNU Lesser General Public License for more details.
21
- *
22
- * You should have received a copy of the GNU Lesser General Public License
23
- * along with this program; if not, write to the Free Software
24
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *)
25
-
26
- (**
27
- A **mutable** sorted set module which allows customized compare behavior.
28
- The implementation uses balanced binary trees, and therefore searching and insertion take time logarithmic in the size of the map.
29
-
30
- It also has two specialized inner modules [Belt.MutableSet.Int](mutable-set-int) and [Belt.MutableSet.String](mutable-set-string) - This module separates data from function which is more verbose but slightly more efficient
31
-
32
- ```res example
33
- module PairComparator = Belt.Id.MakeComparable({
34
- type t = (int, int)
35
- let cmp = ((a0, a1), (b0, b1)) =>
36
- switch Pervasives.compare(a0, b0) {
37
- | 0 => Pervasives.compare(a1, b1)
38
- | c => c
39
- }
40
- })
41
-
42
- let mySet = Belt.MutableSet.make(~id=module(PairComparator))
43
- mySet->Belt.MutableSet.add((1, 2))
44
- ```
45
- *)
46
-
47
-
48
- (** Specialized when key type is `int`, more efficient
49
- than the generic type
50
- *)
51
- module Int = Belt_MutableSetInt
52
-
53
- (** Specialized when key type is `string`, more efficient
54
- than the generic type *)
55
- module String = Belt_MutableSetString
56
-
57
- type ('value, 'identity) t
58
- (**
59
- `'value` is the element type
60
-
61
- `'identity` the identity of the collection
62
- *)
63
-
64
- type ('value, 'id) id = ('value, 'id) Belt_Id.comparable
65
- (**
66
- The identity needed for making a set from scratch
67
- *)
68
-
69
- val make: id:('value, 'id) id -> ('value, 'id) t
70
- (**
71
- Creates a new set by taking in the comparator
72
- *)
73
-
74
- val fromArray: 'value array -> id:('value, 'id) id -> ('value, 'id) t
75
- (**
76
- Creates new set from array of elements.
77
-
78
- ```res example
79
- module IntCmp = Belt.Id.MakeComparable({
80
- type t = int
81
- let cmp = Pervasives.compare
82
- })
83
-
84
- let s0 = Belt.MutableSet.fromArray([1, 3, 2, 4], ~id=module(IntCmp))
85
-
86
- s0->Belt.MutableSet.toArray /* [1, 2, 3, 4] */
87
- ```
88
- *)
89
-
90
- val fromSortedArrayUnsafe: 'value array -> id:('value, 'id) id -> ('value,'id) t
91
- (**
92
- The same as [fromArray][#fromarray] except it is after assuming the input array is already sorted.
93
- *)
94
-
95
- val copy: ('value, 'id) t -> ('value, 'id) t
96
- (**
97
- Returns copy of a set.
98
-
99
- ```res example
100
- module IntCmp = Belt.Id.MakeComparable({
101
- type t = int
102
- let cmp = Pervasives.compare
103
- })
104
-
105
- let s0 = Belt.MutableSet.fromArray([1, 3, 2, 4], ~id=module(IntCmp))
106
-
107
- let copied = s0->Belt.MutableSet.copy
108
- copied->Belt.MutableSet.toArray /* [1, 2, 3, 4] */
109
- ```
110
- *)
111
-
112
- val isEmpty: _ t -> bool
113
- (**
114
- Checks if set is empty.
115
-
116
- ```res example
117
- module IntCmp = Belt.Id.MakeComparable({
118
- type t = int
119
- let cmp = Pervasives.compare
120
- })
121
-
122
- let empty = Belt.MutableSet.fromArray([], ~id=module(IntCmp))
123
- let notEmpty = Belt.MutableSet.fromArray([1], ~id=module(IntCmp))
124
-
125
- Belt.MutableSet.isEmpty(empty) /* true */
126
- Belt.MutableSet.isEmpty(notEmpty) /* false */
127
- ```
128
- *)
129
-
130
- val has: ('value, 'id) t -> 'value -> bool
131
- (**
132
- Checks if element exists in set.
133
-
134
- ```res example
135
- module IntCmp = Belt.Id.MakeComparable({
136
- type t = int
137
- let cmp = Pervasives.compare
138
- })
139
-
140
- let set = Belt.MutableSet.fromArray([1, 4, 2, 5], ~id=module(IntCmp))
141
-
142
- set->Belt.MutableSet.has(3) /* false */
143
- set->Belt.MutableSet.has(1) /* true */
144
- ```
145
- *)
146
-
147
- val add: ('value, 'id) t -> 'value -> unit
148
- (**
149
- Adds element to set. If element existed in set, value is unchanged.
150
-
151
- ```res example
152
- module IntCmp = Belt.Id.MakeComparable({
153
- type t = int
154
- let cmp = Pervasives.compare
155
- })
156
-
157
- let s0 = Belt.MutableSet.make(~id=module(IntCmp))
158
- s0->Belt.MutableSet.add(1)
159
- s0->Belt.MutableSet.add(2)
160
- s0->Belt.MutableSet.add(2)
161
-
162
- s0->Belt.MutableSet.toArray /* [1, 2] */
163
- ```
164
- *)
165
-
166
- val addCheck:
167
- ('value, 'id) t -> 'value -> bool
168
-
169
- val mergeMany:
170
- ('value, 'id) t -> 'value array -> unit
171
- (**
172
- Adds each element of array to set.
173
-
174
- ```res example
175
- module IntCmp = Belt.Id.MakeComparable({
176
- type t = int
177
- let cmp = Pervasives.compare
178
- })
179
-
180
- let set = Belt.MutableSet.make(~id=module(IntCmp))
181
-
182
- set->Belt.MutableSet.mergeMany([5, 4, 3, 2, 1])
183
- set->Belt.MutableSet.toArray /* [1, 2, 3, 4, 5] */
184
- ```
185
- *)
186
-
187
- val remove: ('value, 'id) t -> 'value -> unit
188
- (**
189
- Removes element from set. If element did not exist in set, value is unchanged.
190
-
191
- ```res example
192
- module IntCmp = Belt.Id.MakeComparable({
193
- type t = int
194
- let cmp = Pervasives.compare
195
- })
196
-
197
- let s0 = Belt.MutableSet.fromArray([2, 3, 1, 4, 5], ~id=module(IntCmp))
198
- s0->Belt.MutableSet.remove(1)
199
- s0->Belt.MutableSet.remove(3)
200
- s0->Belt.MutableSet.remove(3)
201
-
202
- s0->Belt.MutableSet.toArray /* [2,4,5] */
203
- ```
204
- *)
205
-
206
- val removeCheck: ('value, 'id) t -> 'value -> bool
207
- (* `b = removeCheck s e` `b` is true means one element removed *)
208
-
209
- val removeMany:
210
- ('value, 'id) t -> 'value array -> unit
211
- (**
212
- Removes each element of array from set.
213
-
214
- ```res example
215
- module IntCmp = Belt.Id.MakeComparable({
216
- type t = int
217
- let cmp = Pervasives.compare
218
- })
219
-
220
- let set = Belt.MutableSet.fromArray([1, 2, 3, 4], ~id=module(IntCmp))
221
-
222
- set->Belt.MutableSet.removeMany([5, 4, 3, 2, 1])
223
- set->Belt.MutableSet.toArray /* [] */
224
- ```
225
- *)
226
-
227
- val union: ('value, 'id) t -> ('value, 'id) t -> ('value, 'id) t
228
- (**
229
- Returns union of two sets.
230
-
231
- ```res example
232
- module IntCmp = Belt.Id.MakeComparable({
233
- type t = int
234
- let cmp = Pervasives.compare
235
- })
236
-
237
- let s0 = Belt.MutableSet.fromArray([5, 2, 3, 5, 6], ~id=module(IntCmp))
238
- let s1 = Belt.MutableSet.fromArray([5, 2, 3, 1, 5, 4], ~id=module(IntCmp))
239
- let union = Belt.MutableSet.union(s0, s1)
240
- union->Belt.MutableSet.toArray /* [1,2,3,4,5,6] */
241
- ```
242
- *)
243
-
244
- val intersect: ('value, 'id) t -> ('value, 'id) t -> ('value, 'id) t
245
- (**
246
- Returns intersection of two sets.
247
-
248
- ```res example
249
- module IntCmp = Belt.Id.MakeComparable({
250
- type t = int
251
- let cmp = Pervasives.compare
252
- })
253
-
254
- let s0 = Belt.MutableSet.fromArray([5, 2, 3, 5, 6], ~id=module(IntCmp))
255
- let s1 = Belt.MutableSet.fromArray([5, 2, 3, 1, 5, 4], ~id=module(IntCmp))
256
- let intersect = Belt.MutableSet.intersect(s0, s1)
257
- intersect->Belt.MutableSet.toArray /* [2,3,5] */
258
- ```
259
- *)
260
-
261
- val diff: ('value, 'id) t -> ('value, 'id) t -> ('value, 'id) t
262
- (**
263
- Returns elements from first set, not existing in second set.
264
-
265
- ```res example
266
- module IntCmp = Belt.Id.MakeComparable({
267
- type t = int
268
- let cmp = Pervasives.compare
269
- })
270
-
271
- let s0 = Belt.MutableSet.fromArray([5, 2, 3, 5, 6], ~id=module(IntCmp))
272
- let s1 = Belt.MutableSet.fromArray([5, 2, 3, 1, 5, 4], ~id=module(IntCmp))
273
- Belt.MutableSet.toArray(Belt.MutableSet.diff(s0, s1)) /* [6] */
274
- Belt.MutableSet.toArray(Belt.MutableSet.diff(s1, s0)) /* [1,4] */
275
- ```
276
- *)
277
-
278
- val subset: ('value, 'id) t -> ('value, 'id) t -> bool
279
- (**
280
- Checks if second set is subset of first set.
281
-
282
- ```res example
283
- module IntCmp = Belt.Id.MakeComparable({
284
- type t = int
285
- let cmp = Pervasives.compare
286
- })
287
-
288
- let s0 = Belt.MutableSet.fromArray([5, 2, 3, 5, 6], ~id=module(IntCmp))
289
- let s1 = Belt.MutableSet.fromArray([5, 2, 3, 1, 5, 4], ~id=module(IntCmp))
290
- let s2 = Belt.MutableSet.intersect(s0, s1)
291
- Belt.MutableSet.subset(s2, s0) /* true */
292
- Belt.MutableSet.subset(s2, s1) /* true */
293
- Belt.MutableSet.subset(s1, s0) /* false */
294
- ```
295
- *)
296
-
297
- val cmp:
298
- ('value, 'id) t -> ('value, 'id) t -> int
299
- (**
300
- Total ordering between sets. Can be used as the ordering function for doing sets of sets. It compares size first and then iterates over each element following the order of elements.
301
- *)
302
-
303
- val eq:
304
- ('value, 'id) t -> ('value, 'id) t -> bool
305
- (**
306
- Checks if two sets are equal.
307
-
308
- ```res example
309
- module IntCmp = Belt.Id.MakeComparable({
310
- type t = int
311
- let cmp = Pervasives.compare
312
- })
313
-
314
- let s0 = Belt.MutableSet.fromArray([5, 2, 3], ~id=module(IntCmp))
315
- let s1 = Belt.MutableSet.fromArray([3, 2, 5], ~id=module(IntCmp))
316
-
317
- Belt.MutableSet.eq(s0, s1) /* true */
318
- ```
319
- *)
320
-
321
- val forEachU: ('value, 'id) t -> ('value -> unit [@bs]) -> unit
322
- (**
323
- Same as [forEach](##forEach) but takes uncurried functon.
324
- *)
325
-
326
- val forEach: ('value, 'id) t -> ('value -> unit) -> unit
327
- (**
328
- Applies function `f` in turn to all elements of set in increasing order.
329
-
330
- ```res example
331
- module IntCmp = Belt.Id.MakeComparable({
332
- type t = int
333
- let cmp = Pervasives.compare
334
- })
335
-
336
- let s0 = Belt.MutableSet.fromArray([5, 2, 3, 5, 6], ~id=module(IntCmp))
337
- let acc = ref(list{})
338
- s0->Belt.MutableSet.forEach(x => acc := Belt.List.add(acc.contents, x))
339
- acc /* [6,5,3,2] */
340
- ```
341
- *)
342
-
343
- val reduceU: ('value, 'id) t -> 'a -> ('a -> 'value -> 'a [@bs]) -> 'a
344
-
345
- val reduce: ('value, 'id) t -> 'a -> ('a -> 'value -> 'a) -> 'a
346
- (**
347
- Applies function `f` to each element of set in increasing order. Function `f` has two parameters: the item from the set and an “accumulator”, which starts with a value of `initialValue`. `reduce` returns the final value of the accumulator.
348
-
349
- ```res example
350
- module IntCmp = Belt.Id.MakeComparable({
351
- type t = int
352
- let cmp = Pervasives.compare
353
- })
354
-
355
- let s0 = Belt.MutableSet.fromArray([5, 2, 3, 5, 6], ~id=module(IntCmp))
356
- s0->Belt.MutableSet.reduce(list{}, (acc, element) => acc->Belt.List.add(element)) /* [6,5,3,2] */
357
- ```
358
- *)
359
-
360
- val everyU: ('value, 'id) t -> ('value -> bool [@bs]) -> bool
361
-
362
- val every: ('value, 'id) t -> ('value -> bool) -> bool
363
- (**
364
- Checks if all elements of the set satisfy the predicate. Order unspecified.
365
-
366
- ```res example
367
- module IntCmp = Belt.Id.MakeComparable({
368
- type t = int
369
- let cmp = Pervasives.compare
370
- })
371
-
372
- let isEven = x => mod(x, 2) == 0
373
-
374
- let s0 = Belt.MutableSet.fromArray([2, 4, 6, 8], ~id=module(IntCmp))
375
- s0->Belt.MutableSet.every(isEven) /* true */
376
- ```
377
- *)
378
-
379
- val someU: ('value, 'id) t -> ('value -> bool [@bs]) -> bool
380
-
381
- val some: ('value, 'id) t -> ('value -> bool) -> bool
382
- (**
383
- Checks if at least one element of the set satisfies the predicate.
384
-
385
- ```res example
386
- module IntCmp = Belt.Id.MakeComparable({
387
- type t = int
388
- let cmp = Pervasives.compare
389
- })
390
-
391
- let isOdd = x => mod(x, 2) != 0
392
-
393
- let s0 = Belt.MutableSet.fromArray([1, 2, 4, 6, 8], ~id=module(IntCmp))
394
- s0->Belt.MutableSet.some(isOdd) /* true */
395
- ```
396
- *)
397
-
398
- val keepU: ('value, 'id) t -> ('value -> bool [@bs]) -> ('value, 'id) t
399
-
400
- val keep: ('value, 'id) t -> ('value -> bool) -> ('value, 'id) t
401
- (**
402
- Returns the set of all elements that satisfy the predicate.
403
-
404
- ```res example
405
- module IntCmp = Belt.Id.MakeComparable({
406
- type t = int
407
- let cmp = Pervasives.compare
408
- })
409
-
410
- let isEven = x => mod(x, 2) == 0
411
-
412
- let s0 = Belt.MutableSet.fromArray([1, 2, 3, 4, 5], ~id=module(IntCmp))
413
- let s1 = s0->Belt.MutableSet.keep(isEven)
414
-
415
- s1->Belt.MutableSet.toArray /* [2, 4] */
416
- ```
417
- *)
418
-
419
- val partitionU: ('value, 'id) t -> ('value -> bool [@bs]) -> ('value, 'id) t * ('value, 'id) t
420
-
421
- val partition: ('value, 'id) t -> ('value -> bool) -> ('value, 'id) t * ('value, 'id) t
422
- (**
423
- ```res example
424
- module IntCmp = Belt.Id.MakeComparable({
425
- type t = int
426
- let cmp = Pervasives.compare
427
- })
428
-
429
- let isOdd = x => mod(x, 2) != 0
430
-
431
- let s0 = Belt.MutableSet.fromArray([1, 2, 3, 4, 5], ~id=module(IntCmp))
432
- let (s1, s2) = s0->Belt.MutableSet.partition(isOdd)
433
-
434
- s1->Belt.MutableSet.toArray /* [1,3,5] */
435
- s2->Belt.MutableSet.toArray /* [2,4] */
436
- ```
437
- *)
438
-
439
- val size: ('value, 'id) t -> int
440
- (**
441
- Returns size of the set.
442
-
443
- ```res example
444
- module IntCmp = Belt.Id.MakeComparable({
445
- type t = int
446
- let cmp = Pervasives.compare
447
- })
448
-
449
- let s0 = Belt.MutableSet.fromArray([1, 2, 3, 4], ~id=module(IntCmp))
450
-
451
- s0->Belt.MutableSet.size /* 4 */
452
- ```
453
- *)
454
-
455
- val toList: ('value, 'id) t -> 'value list
456
- (**
457
- Returns list of ordered set elements.
458
-
459
- ```res example
460
- module IntCmp = Belt.Id.MakeComparable({
461
- type t = int
462
- let cmp = Pervasives.compare
463
- })
464
-
465
- let s0 = Belt.MutableSet.fromArray([3, 2, 1, 5], ~id=module(IntCmp))
466
-
467
- s0->Belt.MutableSet.toList /* [1,2,3,5] */
468
- ```
469
- *)
470
-
471
- val toArray: ('value, 'id) t -> 'value array
472
- (**
473
- Returns array of ordered set elements.
474
-
475
- ```res example
476
- module IntCmp = Belt.Id.MakeComparable({
477
- type t = int
478
- let cmp = Pervasives.compare
479
- })
480
-
481
- let s0 = Belt.MutableSet.fromArray([3, 2, 1, 5], ~id=module(IntCmp))
482
-
483
- s0->Belt.MutableSet.toArray /* [1,2,3,5] */
484
- ```
485
- *)
486
-
487
- val minimum: ('value, 'id) t -> 'value option
488
- (**
489
- Returns minimum value of the collection. `None` if collection is empty.
490
-
491
- ```res example
492
- module IntCmp = Belt.Id.MakeComparable({
493
- type t = int
494
- let cmp = Pervasives.compare
495
- })
496
-
497
- let s0 = Belt.MutableSet.make(~id=module(IntCmp))
498
- let s1 = Belt.MutableSet.fromArray([3, 2, 1, 5], ~id=module(IntCmp))
499
-
500
- s0->Belt.MutableSet.minimum /* None */
501
- s1->Belt.MutableSet.minimum /* Some(1) */
502
- ```
503
- *)
504
-
505
- val minUndefined: ('value, 'id) t -> 'value Js.undefined
506
- (**
507
- Returns minimum value of the collection. `undefined` if collection is empty.
508
-
509
- ```res example
510
- module IntCmp = Belt.Id.MakeComparable({
511
- type t = int
512
- let cmp = Pervasives.compare
513
- })
514
-
515
- let s0 = Belt.MutableSet.make(~id=module(IntCmp))
516
- let s1 = Belt.MutableSet.fromArray([3, 2, 1, 5], ~id=module(IntCmp))
517
-
518
- s0->Belt.MutableSet.minUndefined /* undefined */
519
- s1->Belt.MutableSet.minUndefined /* 1 */
520
- ```
521
- *)
522
-
523
- val maximum: ('value, 'id) t -> 'value option
524
- (**
525
- Returns maximum value of the collection. `None` if collection is empty.
526
-
527
- ```res example
528
- module IntCmp = Belt.Id.MakeComparable({
529
- type t = int
530
- let cmp = Pervasives.compare
531
- })
532
-
533
- let s0 = Belt.MutableSet.make(~id=module(IntCmp))
534
- let s1 = Belt.MutableSet.fromArray([3, 2, 1, 5], ~id=module(IntCmp))
535
-
536
- s0->Belt.MutableSet.maximum /* None */
537
- s1->Belt.MutableSet.maximum /* Some(5) */
538
- ```
539
- *)
540
-
541
- val maxUndefined: ('value, 'id) t -> 'value Js.undefined
542
- (**
543
- Returns maximum value of the collection. `undefined` if collection is empty.
544
-
545
- ```res example
546
- module IntCmp = Belt.Id.MakeComparable({
547
- type t = int
548
- let cmp = Pervasives.compare
549
- })
550
-
551
- let s0 = Belt.MutableSet.make(~id=module(IntCmp))
552
- let s1 = Belt.MutableSet.fromArray([3, 2, 1, 5], ~id=module(IntCmp))
553
-
554
- s0->Belt.MutableSet.maxUndefined /* undefined */
555
- s1->Belt.MutableSet.maxUndefined /* 5 */
556
- ```
557
- *)
558
-
559
- val get: ('value, 'id) t -> 'value -> 'value option
560
- (**
561
- Returns the reference of the value which is equivalent to value using the comparator specifiecd by this collection. Returns `None` if element does not exist.
562
-
563
- ```res example
564
- module IntCmp = Belt.Id.MakeComparable({
565
- type t = int
566
- let cmp = Pervasives.compare
567
- })
568
-
569
- let s0 = Belt.MutableSet.fromArray([1, 2, 3, 4, 5], ~id=module(IntCmp))
570
-
571
- s0->Belt.MutableSet.get(3) /* Some(3) */
572
- s0->Belt.MutableSet.get(20) /* None */
573
- ```
574
- *)
575
-
576
- val getUndefined: ('value, 'id) t -> 'value -> 'value Js.undefined
577
- (**
578
- Same as [get](#get) but returns `undefined` when element does not exist.
579
- *)
580
-
581
- val getExn: ('value, 'id) t -> 'value -> 'value
582
- (**
583
- Same as [get](#get) but raise when element does not exist.
584
- *)
585
-
586
- val split: ('value, 'id) t -> 'value -> (('value, 'id) t * ('value, 'id) t) * bool
587
- (**
588
- Returns a tuple `((smaller, larger), present)`, `present` is true when element exist in set.
589
-
590
- ```res example
591
- module IntCmp = Belt.Id.MakeComparable({
592
- type t = int
593
- let cmp = Pervasives.compare
594
- })
595
-
596
- let s0 = Belt.MutableSet.fromArray([1, 2, 3, 4, 5], ~id=module(IntCmp))
597
-
598
- let ((smaller, larger), present) = s0->Belt.MutableSet.split(3)
599
-
600
- present /* true */
601
- smaller->Belt.MutableSet.toArray /* [1,2] */
602
- larger->Belt.MutableSet.toArray /* [4,5] */
603
- ```
604
- *)
605
-
606
- val checkInvariantInternal: _ t -> unit
607
- (**
608
- **raise** when invariant is not held
609
- *)
610
-
611
- (*
612
- `add0` was not exposed for various reasons:
613
- 1. such api is dangerious
614
- [ cmp: ('value,'id) Belt_Cmp.cmp ->
615
- ('value, 'id) t0 -> 'value ->
616
- ('value, 'id) t0]
617
- 2. It is not really significantly more *)
Binary file
Binary file
Binary file