@tellahq/rescript 10.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (997) hide show
  1. package/CHANGELOG.md +1717 -0
  2. package/COPYING +674 -0
  3. package/COPYING.LESSER +165 -0
  4. package/CREDITS.md +59 -0
  5. package/LICENSE +24 -0
  6. package/README.md +114 -0
  7. package/bsc +22 -0
  8. package/bsrefmt +16 -0
  9. package/darwin/bsb_helper.exe +0 -0
  10. package/darwin/bsc.exe +0 -0
  11. package/darwin/ninja.COPYING +202 -0
  12. package/darwin/ninja.exe +0 -0
  13. package/darwin/refmt.exe +0 -0
  14. package/darwin/rescript.exe +0 -0
  15. package/darwinarm64/bsb_helper.exe +0 -0
  16. package/darwinarm64/bsc.exe +0 -0
  17. package/darwinarm64/ninja.COPYING +202 -0
  18. package/darwinarm64/ninja.exe +0 -0
  19. package/darwinarm64/refmt.exe +0 -0
  20. package/darwinarm64/rescript.exe +0 -0
  21. package/docs/docson/build-schema.json +557 -0
  22. package/freebsd/ninja.COPYING +202 -0
  23. package/jscomp/stubs/ext_basic_hash_stubs.c +216 -0
  24. package/lib/4.06.1/bsb_helper.ml +2436 -0
  25. package/lib/4.06.1/bsb_helper.mli +0 -0
  26. package/lib/4.06.1/refmt_main3.ml +115517 -0
  27. package/lib/4.06.1/refmt_main3.mli +1 -0
  28. package/lib/4.06.1/rescript.ml +15500 -0
  29. package/lib/4.06.1/rescript.mli +0 -0
  30. package/lib/4.06.1/whole_compiler.ml +306395 -0
  31. package/lib/4.06.1/whole_compiler.mli +0 -0
  32. package/lib/bstracing +270 -0
  33. package/lib/es6/arg.js +717 -0
  34. package/lib/es6/array.js +511 -0
  35. package/lib/es6/arrayLabels.js +511 -0
  36. package/lib/es6/belt.js +57 -0
  37. package/lib/es6/belt_Array.js +764 -0
  38. package/lib/es6/belt_Float.js +16 -0
  39. package/lib/es6/belt_HashMap.js +280 -0
  40. package/lib/es6/belt_HashMapInt.js +264 -0
  41. package/lib/es6/belt_HashMapString.js +264 -0
  42. package/lib/es6/belt_HashSet.js +222 -0
  43. package/lib/es6/belt_HashSetInt.js +207 -0
  44. package/lib/es6/belt_HashSetString.js +207 -0
  45. package/lib/es6/belt_Id.js +71 -0
  46. package/lib/es6/belt_Int.js +16 -0
  47. package/lib/es6/belt_List.js +1512 -0
  48. package/lib/es6/belt_Map.js +376 -0
  49. package/lib/es6/belt_MapDict.js +417 -0
  50. package/lib/es6/belt_MapInt.js +307 -0
  51. package/lib/es6/belt_MapString.js +307 -0
  52. package/lib/es6/belt_MutableMap.js +395 -0
  53. package/lib/es6/belt_MutableMapInt.js +362 -0
  54. package/lib/es6/belt_MutableMapString.js +362 -0
  55. package/lib/es6/belt_MutableQueue.js +299 -0
  56. package/lib/es6/belt_MutableSet.js +538 -0
  57. package/lib/es6/belt_MutableSetInt.js +501 -0
  58. package/lib/es6/belt_MutableSetString.js +501 -0
  59. package/lib/es6/belt_MutableStack.js +137 -0
  60. package/lib/es6/belt_Option.js +151 -0
  61. package/lib/es6/belt_Range.js +109 -0
  62. package/lib/es6/belt_Result.js +136 -0
  63. package/lib/es6/belt_Set.js +314 -0
  64. package/lib/es6/belt_SetDict.js +362 -0
  65. package/lib/es6/belt_SetInt.js +359 -0
  66. package/lib/es6/belt_SetString.js +359 -0
  67. package/lib/es6/belt_SortArray.js +427 -0
  68. package/lib/es6/belt_SortArrayInt.js +374 -0
  69. package/lib/es6/belt_SortArrayString.js +374 -0
  70. package/lib/es6/belt_internalAVLset.js +940 -0
  71. package/lib/es6/belt_internalAVLtree.js +1146 -0
  72. package/lib/es6/belt_internalBuckets.js +287 -0
  73. package/lib/es6/belt_internalBucketsType.js +49 -0
  74. package/lib/es6/belt_internalMapInt.js +365 -0
  75. package/lib/es6/belt_internalMapString.js +365 -0
  76. package/lib/es6/belt_internalSetBuckets.js +191 -0
  77. package/lib/es6/belt_internalSetInt.js +209 -0
  78. package/lib/es6/belt_internalSetString.js +209 -0
  79. package/lib/es6/buffer.js +477 -0
  80. package/lib/es6/bytes.js +704 -0
  81. package/lib/es6/bytesLabels.js +704 -0
  82. package/lib/es6/callback.js +16 -0
  83. package/lib/es6/caml.js +196 -0
  84. package/lib/es6/caml_array.js +122 -0
  85. package/lib/es6/caml_array_extern.js +1 -0
  86. package/lib/es6/caml_bytes.js +122 -0
  87. package/lib/es6/caml_exceptions.js +31 -0
  88. package/lib/es6/caml_external_polyfill.js +32 -0
  89. package/lib/es6/caml_float.js +129 -0
  90. package/lib/es6/caml_float_extern.js +1 -0
  91. package/lib/es6/caml_format.js +818 -0
  92. package/lib/es6/caml_hash.js +101 -0
  93. package/lib/es6/caml_hash_primitive.js +51 -0
  94. package/lib/es6/caml_int32.js +28 -0
  95. package/lib/es6/caml_int64.js +606 -0
  96. package/lib/es6/caml_int64_extern.js +1 -0
  97. package/lib/es6/caml_js_exceptions.js +31 -0
  98. package/lib/es6/caml_lexer.js +258 -0
  99. package/lib/es6/caml_md5.js +168 -0
  100. package/lib/es6/caml_module.js +117 -0
  101. package/lib/es6/caml_nativeint_extern.js +1 -0
  102. package/lib/es6/caml_obj.js +413 -0
  103. package/lib/es6/caml_option.js +86 -0
  104. package/lib/es6/caml_parser.js +303 -0
  105. package/lib/es6/caml_splice_call.js +52 -0
  106. package/lib/es6/caml_string.js +23 -0
  107. package/lib/es6/caml_string_extern.js +1 -0
  108. package/lib/es6/caml_sys.js +99 -0
  109. package/lib/es6/caml_undefined_extern.js +1 -0
  110. package/lib/es6/camlinternalLazy.js +59 -0
  111. package/lib/es6/camlinternalMod.js +1 -0
  112. package/lib/es6/char.js +126 -0
  113. package/lib/es6/complex.js +176 -0
  114. package/lib/es6/curry.js +526 -0
  115. package/lib/es6/digest.js +118 -0
  116. package/lib/es6/dom.js +12 -0
  117. package/lib/es6/dom_storage.js +27 -0
  118. package/lib/es6/dom_storage2.js +1 -0
  119. package/lib/es6/filename.js +496 -0
  120. package/lib/es6/genlex.js +666 -0
  121. package/lib/es6/hashtbl.js +1115 -0
  122. package/lib/es6/hashtblLabels.js +170 -0
  123. package/lib/es6/int32.js +75 -0
  124. package/lib/es6/int64.js +70 -0
  125. package/lib/es6/js.js +111 -0
  126. package/lib/es6/js_OO.js +15 -0
  127. package/lib/es6/js_array.js +223 -0
  128. package/lib/es6/js_array2.js +1 -0
  129. package/lib/es6/js_bigint.js +1 -0
  130. package/lib/es6/js_cast.js +1 -0
  131. package/lib/es6/js_console.js +1 -0
  132. package/lib/es6/js_date.js +1 -0
  133. package/lib/es6/js_dict.js +85 -0
  134. package/lib/es6/js_exn.js +44 -0
  135. package/lib/es6/js_float.js +1 -0
  136. package/lib/es6/js_global.js +1 -0
  137. package/lib/es6/js_int.js +17 -0
  138. package/lib/es6/js_json.js +172 -0
  139. package/lib/es6/js_list.js +333 -0
  140. package/lib/es6/js_map.js +1 -0
  141. package/lib/es6/js_mapperRt.js +54 -0
  142. package/lib/es6/js_math.js +50 -0
  143. package/lib/es6/js_null.js +49 -0
  144. package/lib/es6/js_null_undefined.js +35 -0
  145. package/lib/es6/js_obj.js +1 -0
  146. package/lib/es6/js_option.js +104 -0
  147. package/lib/es6/js_promise.js +17 -0
  148. package/lib/es6/js_re.js +1 -0
  149. package/lib/es6/js_result.js +1 -0
  150. package/lib/es6/js_set.js +1 -0
  151. package/lib/es6/js_string.js +199 -0
  152. package/lib/es6/js_string2.js +1 -0
  153. package/lib/es6/js_typed_array.js +1733 -0
  154. package/lib/es6/js_typed_array2.js +39 -0
  155. package/lib/es6/js_types.js +77 -0
  156. package/lib/es6/js_undefined.js +52 -0
  157. package/lib/es6/js_vector.js +134 -0
  158. package/lib/es6/js_weakmap.js +1 -0
  159. package/lib/es6/js_weakset.js +1 -0
  160. package/lib/es6/jsx.js +1 -0
  161. package/lib/es6/jsxDOM.js +1 -0
  162. package/lib/es6/jsxDOMStyle.js +1 -0
  163. package/lib/es6/jsxEvent.js +59 -0
  164. package/lib/es6/lazy.js +44 -0
  165. package/lib/es6/lexing.js +217 -0
  166. package/lib/es6/list.js +1713 -0
  167. package/lib/es6/listLabels.js +1713 -0
  168. package/lib/es6/map.js +936 -0
  169. package/lib/es6/mapLabels.js +951 -0
  170. package/lib/es6/moreLabels.js +1931 -0
  171. package/lib/es6/node.js +39 -0
  172. package/lib/es6/node_buffer.js +1 -0
  173. package/lib/es6/node_child_process.js +1 -0
  174. package/lib/es6/node_fs.js +9 -0
  175. package/lib/es6/node_module.js +1 -0
  176. package/lib/es6/node_path.js +1 -0
  177. package/lib/es6/node_process.js +18 -0
  178. package/lib/es6/obj.js +11 -0
  179. package/lib/es6/package.json +1 -0
  180. package/lib/es6/parsing.js +237 -0
  181. package/lib/es6/pervasives.js +250 -0
  182. package/lib/es6/printexc.js +102 -0
  183. package/lib/es6/queue.js +181 -0
  184. package/lib/es6/random.js +280 -0
  185. package/lib/es6/set.js +955 -0
  186. package/lib/es6/setLabels.js +988 -0
  187. package/lib/es6/sort.js +168 -0
  188. package/lib/es6/stack.js +88 -0
  189. package/lib/es6/stdLabels.js +18 -0
  190. package/lib/es6/stream.js +496 -0
  191. package/lib/es6/string.js +337 -0
  192. package/lib/es6/stringLabels.js +337 -0
  193. package/lib/es6/sys.js +182 -0
  194. package/lib/es6/uchar.js +133 -0
  195. package/lib/js/arg.js +715 -0
  196. package/lib/js/array.js +509 -0
  197. package/lib/js/arrayLabels.js +509 -0
  198. package/lib/js/belt.js +55 -0
  199. package/lib/js/belt_Array.js +762 -0
  200. package/lib/js/belt_Float.js +14 -0
  201. package/lib/js/belt_HashMap.js +278 -0
  202. package/lib/js/belt_HashMapInt.js +262 -0
  203. package/lib/js/belt_HashMapString.js +262 -0
  204. package/lib/js/belt_HashSet.js +220 -0
  205. package/lib/js/belt_HashSetInt.js +205 -0
  206. package/lib/js/belt_HashSetString.js +205 -0
  207. package/lib/js/belt_Id.js +69 -0
  208. package/lib/js/belt_Int.js +14 -0
  209. package/lib/js/belt_List.js +1510 -0
  210. package/lib/js/belt_Map.js +374 -0
  211. package/lib/js/belt_MapDict.js +415 -0
  212. package/lib/js/belt_MapInt.js +305 -0
  213. package/lib/js/belt_MapString.js +305 -0
  214. package/lib/js/belt_MutableMap.js +393 -0
  215. package/lib/js/belt_MutableMapInt.js +360 -0
  216. package/lib/js/belt_MutableMapString.js +360 -0
  217. package/lib/js/belt_MutableQueue.js +297 -0
  218. package/lib/js/belt_MutableSet.js +536 -0
  219. package/lib/js/belt_MutableSetInt.js +499 -0
  220. package/lib/js/belt_MutableSetString.js +499 -0
  221. package/lib/js/belt_MutableStack.js +135 -0
  222. package/lib/js/belt_Option.js +149 -0
  223. package/lib/js/belt_Range.js +107 -0
  224. package/lib/js/belt_Result.js +134 -0
  225. package/lib/js/belt_Set.js +312 -0
  226. package/lib/js/belt_SetDict.js +360 -0
  227. package/lib/js/belt_SetInt.js +357 -0
  228. package/lib/js/belt_SetString.js +357 -0
  229. package/lib/js/belt_SortArray.js +425 -0
  230. package/lib/js/belt_SortArrayInt.js +372 -0
  231. package/lib/js/belt_SortArrayString.js +372 -0
  232. package/lib/js/belt_internalAVLset.js +938 -0
  233. package/lib/js/belt_internalAVLtree.js +1144 -0
  234. package/lib/js/belt_internalBuckets.js +285 -0
  235. package/lib/js/belt_internalBucketsType.js +47 -0
  236. package/lib/js/belt_internalMapInt.js +363 -0
  237. package/lib/js/belt_internalMapString.js +363 -0
  238. package/lib/js/belt_internalSetBuckets.js +189 -0
  239. package/lib/js/belt_internalSetInt.js +207 -0
  240. package/lib/js/belt_internalSetString.js +207 -0
  241. package/lib/js/buffer.js +475 -0
  242. package/lib/js/bytes.js +702 -0
  243. package/lib/js/bytesLabels.js +702 -0
  244. package/lib/js/callback.js +14 -0
  245. package/lib/js/caml.js +194 -0
  246. package/lib/js/caml_array.js +120 -0
  247. package/lib/js/caml_array_extern.js +1 -0
  248. package/lib/js/caml_bytes.js +120 -0
  249. package/lib/js/caml_exceptions.js +29 -0
  250. package/lib/js/caml_external_polyfill.js +30 -0
  251. package/lib/js/caml_float.js +127 -0
  252. package/lib/js/caml_float_extern.js +1 -0
  253. package/lib/js/caml_format.js +816 -0
  254. package/lib/js/caml_hash.js +99 -0
  255. package/lib/js/caml_hash_primitive.js +49 -0
  256. package/lib/js/caml_int32.js +26 -0
  257. package/lib/js/caml_int64.js +604 -0
  258. package/lib/js/caml_int64_extern.js +1 -0
  259. package/lib/js/caml_js_exceptions.js +29 -0
  260. package/lib/js/caml_lexer.js +256 -0
  261. package/lib/js/caml_md5.js +166 -0
  262. package/lib/js/caml_module.js +115 -0
  263. package/lib/js/caml_nativeint_extern.js +1 -0
  264. package/lib/js/caml_obj.js +411 -0
  265. package/lib/js/caml_option.js +84 -0
  266. package/lib/js/caml_parser.js +301 -0
  267. package/lib/js/caml_splice_call.js +50 -0
  268. package/lib/js/caml_string.js +21 -0
  269. package/lib/js/caml_string_extern.js +1 -0
  270. package/lib/js/caml_sys.js +97 -0
  271. package/lib/js/caml_undefined_extern.js +1 -0
  272. package/lib/js/camlinternalLazy.js +57 -0
  273. package/lib/js/camlinternalMod.js +1 -0
  274. package/lib/js/char.js +124 -0
  275. package/lib/js/complex.js +174 -0
  276. package/lib/js/curry.js +524 -0
  277. package/lib/js/digest.js +116 -0
  278. package/lib/js/dom.js +10 -0
  279. package/lib/js/dom_storage.js +25 -0
  280. package/lib/js/dom_storage2.js +1 -0
  281. package/lib/js/filename.js +494 -0
  282. package/lib/js/genlex.js +664 -0
  283. package/lib/js/hashtbl.js +1113 -0
  284. package/lib/js/hashtblLabels.js +168 -0
  285. package/lib/js/int32.js +73 -0
  286. package/lib/js/int64.js +68 -0
  287. package/lib/js/js.js +109 -0
  288. package/lib/js/js_OO.js +13 -0
  289. package/lib/js/js_array.js +221 -0
  290. package/lib/js/js_array2.js +1 -0
  291. package/lib/js/js_bigint.js +1 -0
  292. package/lib/js/js_cast.js +1 -0
  293. package/lib/js/js_console.js +1 -0
  294. package/lib/js/js_date.js +1 -0
  295. package/lib/js/js_dict.js +83 -0
  296. package/lib/js/js_exn.js +42 -0
  297. package/lib/js/js_float.js +1 -0
  298. package/lib/js/js_global.js +1 -0
  299. package/lib/js/js_int.js +15 -0
  300. package/lib/js/js_json.js +170 -0
  301. package/lib/js/js_list.js +331 -0
  302. package/lib/js/js_map.js +1 -0
  303. package/lib/js/js_mapperRt.js +52 -0
  304. package/lib/js/js_math.js +48 -0
  305. package/lib/js/js_null.js +47 -0
  306. package/lib/js/js_null_undefined.js +33 -0
  307. package/lib/js/js_obj.js +1 -0
  308. package/lib/js/js_option.js +103 -0
  309. package/lib/js/js_promise.js +15 -0
  310. package/lib/js/js_re.js +1 -0
  311. package/lib/js/js_result.js +1 -0
  312. package/lib/js/js_set.js +1 -0
  313. package/lib/js/js_string.js +197 -0
  314. package/lib/js/js_string2.js +1 -0
  315. package/lib/js/js_typed_array.js +1731 -0
  316. package/lib/js/js_typed_array2.js +37 -0
  317. package/lib/js/js_types.js +75 -0
  318. package/lib/js/js_undefined.js +50 -0
  319. package/lib/js/js_vector.js +132 -0
  320. package/lib/js/js_weakmap.js +1 -0
  321. package/lib/js/js_weakset.js +1 -0
  322. package/lib/js/jsx.js +1 -0
  323. package/lib/js/jsxDOM.js +1 -0
  324. package/lib/js/jsxDOMStyle.js +1 -0
  325. package/lib/js/jsxEvent.js +57 -0
  326. package/lib/js/lazy.js +42 -0
  327. package/lib/js/lexing.js +215 -0
  328. package/lib/js/list.js +1711 -0
  329. package/lib/js/listLabels.js +1711 -0
  330. package/lib/js/map.js +934 -0
  331. package/lib/js/mapLabels.js +949 -0
  332. package/lib/js/moreLabels.js +1929 -0
  333. package/lib/js/node.js +37 -0
  334. package/lib/js/node_buffer.js +1 -0
  335. package/lib/js/node_child_process.js +1 -0
  336. package/lib/js/node_fs.js +7 -0
  337. package/lib/js/node_module.js +1 -0
  338. package/lib/js/node_path.js +1 -0
  339. package/lib/js/node_process.js +16 -0
  340. package/lib/js/obj.js +9 -0
  341. package/lib/js/parsing.js +235 -0
  342. package/lib/js/pervasives.js +248 -0
  343. package/lib/js/printexc.js +100 -0
  344. package/lib/js/queue.js +179 -0
  345. package/lib/js/random.js +278 -0
  346. package/lib/js/set.js +953 -0
  347. package/lib/js/setLabels.js +986 -0
  348. package/lib/js/sort.js +166 -0
  349. package/lib/js/stack.js +86 -0
  350. package/lib/js/stdLabels.js +16 -0
  351. package/lib/js/stream.js +494 -0
  352. package/lib/js/string.js +335 -0
  353. package/lib/js/stringLabels.js +335 -0
  354. package/lib/js/sys.js +180 -0
  355. package/lib/js/uchar.js +131 -0
  356. package/lib/minisocket.js +93 -0
  357. package/lib/ocaml/arg.cmi +0 -0
  358. package/lib/ocaml/arg.cmt +0 -0
  359. package/lib/ocaml/arg.cmti +0 -0
  360. package/lib/ocaml/arg.ml +359 -0
  361. package/lib/ocaml/arg.mli +185 -0
  362. package/lib/ocaml/array.cmi +0 -0
  363. package/lib/ocaml/array.cmt +0 -0
  364. package/lib/ocaml/array.cmti +0 -0
  365. package/lib/ocaml/array.ml +307 -0
  366. package/lib/ocaml/array.mli +275 -0
  367. package/lib/ocaml/arrayLabels.cmi +0 -0
  368. package/lib/ocaml/arrayLabels.cmt +0 -0
  369. package/lib/ocaml/arrayLabels.cmti +0 -0
  370. package/lib/ocaml/arrayLabels.ml +307 -0
  371. package/lib/ocaml/arrayLabels.mli +276 -0
  372. package/lib/ocaml/belt.cmi +0 -0
  373. package/lib/ocaml/belt.cmt +0 -0
  374. package/lib/ocaml/belt.ml +352 -0
  375. package/lib/ocaml/belt_Array.cmi +0 -0
  376. package/lib/ocaml/belt_Array.cmt +0 -0
  377. package/lib/ocaml/belt_Array.cmti +0 -0
  378. package/lib/ocaml/belt_Array.ml +525 -0
  379. package/lib/ocaml/belt_Array.mli +707 -0
  380. package/lib/ocaml/belt_Float.cmi +0 -0
  381. package/lib/ocaml/belt_Float.cmt +0 -0
  382. package/lib/ocaml/belt_Float.cmti +0 -0
  383. package/lib/ocaml/belt_Float.ml +50 -0
  384. package/lib/ocaml/belt_Float.mli +106 -0
  385. package/lib/ocaml/belt_HashMap.cmi +0 -0
  386. package/lib/ocaml/belt_HashMap.cmt +0 -0
  387. package/lib/ocaml/belt_HashMap.cmti +0 -0
  388. package/lib/ocaml/belt_HashMap.ml +226 -0
  389. package/lib/ocaml/belt_HashMap.mli +436 -0
  390. package/lib/ocaml/belt_HashMapInt.cmi +0 -0
  391. package/lib/ocaml/belt_HashMapInt.cmt +0 -0
  392. package/lib/ocaml/belt_HashMapInt.cmti +0 -0
  393. package/lib/ocaml/belt_HashMapInt.ml +206 -0
  394. package/lib/ocaml/belt_HashMapInt.mli +50 -0
  395. package/lib/ocaml/belt_HashMapString.cmi +0 -0
  396. package/lib/ocaml/belt_HashMapString.cmt +0 -0
  397. package/lib/ocaml/belt_HashMapString.cmti +0 -0
  398. package/lib/ocaml/belt_HashMapString.ml +206 -0
  399. package/lib/ocaml/belt_HashMapString.mli +50 -0
  400. package/lib/ocaml/belt_HashSet.cmi +0 -0
  401. package/lib/ocaml/belt_HashSet.cmt +0 -0
  402. package/lib/ocaml/belt_HashSet.cmti +0 -0
  403. package/lib/ocaml/belt_HashSet.ml +196 -0
  404. package/lib/ocaml/belt_HashSet.mli +125 -0
  405. package/lib/ocaml/belt_HashSetInt.cmi +0 -0
  406. package/lib/ocaml/belt_HashSetInt.cmt +0 -0
  407. package/lib/ocaml/belt_HashSetInt.cmti +0 -0
  408. package/lib/ocaml/belt_HashSetInt.ml +155 -0
  409. package/lib/ocaml/belt_HashSetInt.mli +74 -0
  410. package/lib/ocaml/belt_HashSetString.cmi +0 -0
  411. package/lib/ocaml/belt_HashSetString.cmt +0 -0
  412. package/lib/ocaml/belt_HashSetString.cmti +0 -0
  413. package/lib/ocaml/belt_HashSetString.ml +156 -0
  414. package/lib/ocaml/belt_HashSetString.mli +74 -0
  415. package/lib/ocaml/belt_Id.cmi +0 -0
  416. package/lib/ocaml/belt_Id.cmt +0 -0
  417. package/lib/ocaml/belt_Id.cmti +0 -0
  418. package/lib/ocaml/belt_Id.ml +133 -0
  419. package/lib/ocaml/belt_Id.mli +171 -0
  420. package/lib/ocaml/belt_Int.cmi +0 -0
  421. package/lib/ocaml/belt_Int.cmt +0 -0
  422. package/lib/ocaml/belt_Int.cmti +0 -0
  423. package/lib/ocaml/belt_Int.ml +50 -0
  424. package/lib/ocaml/belt_Int.mli +103 -0
  425. package/lib/ocaml/belt_List.cmi +0 -0
  426. package/lib/ocaml/belt_List.cmt +0 -0
  427. package/lib/ocaml/belt_List.cmti +0 -0
  428. package/lib/ocaml/belt_List.ml +803 -0
  429. package/lib/ocaml/belt_List.mli +844 -0
  430. package/lib/ocaml/belt_Map.cmi +0 -0
  431. package/lib/ocaml/belt_Map.cmt +0 -0
  432. package/lib/ocaml/belt_Map.cmti +0 -0
  433. package/lib/ocaml/belt_Map.ml +170 -0
  434. package/lib/ocaml/belt_Map.mli +496 -0
  435. package/lib/ocaml/belt_MapDict.cmi +0 -0
  436. package/lib/ocaml/belt_MapDict.cmt +0 -0
  437. package/lib/ocaml/belt_MapDict.cmti +0 -0
  438. package/lib/ocaml/belt_MapDict.ml +278 -0
  439. package/lib/ocaml/belt_MapDict.mli +268 -0
  440. package/lib/ocaml/belt_MapInt.cmi +0 -0
  441. package/lib/ocaml/belt_MapInt.cmt +0 -0
  442. package/lib/ocaml/belt_MapInt.cmti +0 -0
  443. package/lib/ocaml/belt_MapInt.ml +169 -0
  444. package/lib/ocaml/belt_MapInt.mli +187 -0
  445. package/lib/ocaml/belt_MapString.cmi +0 -0
  446. package/lib/ocaml/belt_MapString.cmt +0 -0
  447. package/lib/ocaml/belt_MapString.cmti +0 -0
  448. package/lib/ocaml/belt_MapString.ml +169 -0
  449. package/lib/ocaml/belt_MapString.mli +187 -0
  450. package/lib/ocaml/belt_MutableMap.cmi +0 -0
  451. package/lib/ocaml/belt_MutableMap.cmt +0 -0
  452. package/lib/ocaml/belt_MutableMap.cmti +0 -0
  453. package/lib/ocaml/belt_MutableMap.ml +241 -0
  454. package/lib/ocaml/belt_MutableMap.mli +145 -0
  455. package/lib/ocaml/belt_MutableMapInt.cmi +0 -0
  456. package/lib/ocaml/belt_MutableMapInt.cmt +0 -0
  457. package/lib/ocaml/belt_MutableMapInt.cmti +0 -0
  458. package/lib/ocaml/belt_MutableMapInt.ml +172 -0
  459. package/lib/ocaml/belt_MutableMapInt.mli +135 -0
  460. package/lib/ocaml/belt_MutableMapString.cmi +0 -0
  461. package/lib/ocaml/belt_MutableMapString.cmt +0 -0
  462. package/lib/ocaml/belt_MutableMapString.cmti +0 -0
  463. package/lib/ocaml/belt_MutableMapString.ml +172 -0
  464. package/lib/ocaml/belt_MutableMapString.mli +135 -0
  465. package/lib/ocaml/belt_MutableQueue.cmi +0 -0
  466. package/lib/ocaml/belt_MutableQueue.cmt +0 -0
  467. package/lib/ocaml/belt_MutableQueue.cmti +0 -0
  468. package/lib/ocaml/belt_MutableQueue.ml +222 -0
  469. package/lib/ocaml/belt_MutableQueue.mli +116 -0
  470. package/lib/ocaml/belt_MutableSet.cmi +0 -0
  471. package/lib/ocaml/belt_MutableSet.cmt +0 -0
  472. package/lib/ocaml/belt_MutableSet.cmti +0 -0
  473. package/lib/ocaml/belt_MutableSet.ml +371 -0
  474. package/lib/ocaml/belt_MutableSet.mli +617 -0
  475. package/lib/ocaml/belt_MutableSetInt.cmi +0 -0
  476. package/lib/ocaml/belt_MutableSetInt.cmt +0 -0
  477. package/lib/ocaml/belt_MutableSetInt.cmti +0 -0
  478. package/lib/ocaml/belt_MutableSetInt.ml +342 -0
  479. package/lib/ocaml/belt_MutableSetInt.mli +124 -0
  480. package/lib/ocaml/belt_MutableSetString.cmi +0 -0
  481. package/lib/ocaml/belt_MutableSetString.cmt +0 -0
  482. package/lib/ocaml/belt_MutableSetString.cmti +0 -0
  483. package/lib/ocaml/belt_MutableSetString.ml +342 -0
  484. package/lib/ocaml/belt_MutableSetString.mli +124 -0
  485. package/lib/ocaml/belt_MutableStack.cmi +0 -0
  486. package/lib/ocaml/belt_MutableStack.cmt +0 -0
  487. package/lib/ocaml/belt_MutableStack.cmti +0 -0
  488. package/lib/ocaml/belt_MutableStack.ml +106 -0
  489. package/lib/ocaml/belt_MutableStack.mli +63 -0
  490. package/lib/ocaml/belt_Option.cmi +0 -0
  491. package/lib/ocaml/belt_Option.cmt +0 -0
  492. package/lib/ocaml/belt_Option.cmti +0 -0
  493. package/lib/ocaml/belt_Option.ml +93 -0
  494. package/lib/ocaml/belt_Option.mli +270 -0
  495. package/lib/ocaml/belt_Range.cmi +0 -0
  496. package/lib/ocaml/belt_Range.cmt +0 -0
  497. package/lib/ocaml/belt_Range.cmti +0 -0
  498. package/lib/ocaml/belt_Range.ml +76 -0
  499. package/lib/ocaml/belt_Range.mli +114 -0
  500. package/lib/ocaml/belt_Result.cmi +0 -0
  501. package/lib/ocaml/belt_Result.cmt +0 -0
  502. package/lib/ocaml/belt_Result.cmti +0 -0
  503. package/lib/ocaml/belt_Result.ml +75 -0
  504. package/lib/ocaml/belt_Result.mli +205 -0
  505. package/lib/ocaml/belt_Set.cmi +0 -0
  506. package/lib/ocaml/belt_Set.cmt +0 -0
  507. package/lib/ocaml/belt_Set.cmti +0 -0
  508. package/lib/ocaml/belt_Set.cppo.ml +205 -0
  509. package/lib/ocaml/belt_Set.cppo.mli +153 -0
  510. package/lib/ocaml/belt_Set.ml +164 -0
  511. package/lib/ocaml/belt_Set.mli +523 -0
  512. package/lib/ocaml/belt_SetDict.cmi +0 -0
  513. package/lib/ocaml/belt_SetDict.cmt +0 -0
  514. package/lib/ocaml/belt_SetDict.cmti +0 -0
  515. package/lib/ocaml/belt_SetDict.ml +237 -0
  516. package/lib/ocaml/belt_SetDict.mli +567 -0
  517. package/lib/ocaml/belt_SetInt.cmi +0 -0
  518. package/lib/ocaml/belt_SetInt.cmt +0 -0
  519. package/lib/ocaml/belt_SetInt.cmti +0 -0
  520. package/lib/ocaml/belt_SetInt.ml +201 -0
  521. package/lib/ocaml/belt_SetInt.mli +151 -0
  522. package/lib/ocaml/belt_SetString.cmi +0 -0
  523. package/lib/ocaml/belt_SetString.cmt +0 -0
  524. package/lib/ocaml/belt_SetString.cmti +0 -0
  525. package/lib/ocaml/belt_SetString.ml +201 -0
  526. package/lib/ocaml/belt_SetString.mli +151 -0
  527. package/lib/ocaml/belt_SortArray.cmi +0 -0
  528. package/lib/ocaml/belt_SortArray.cmt +0 -0
  529. package/lib/ocaml/belt_SortArray.cmti +0 -0
  530. package/lib/ocaml/belt_SortArray.ml +322 -0
  531. package/lib/ocaml/belt_SortArray.mli +146 -0
  532. package/lib/ocaml/belt_SortArrayInt.cmi +0 -0
  533. package/lib/ocaml/belt_SortArrayInt.cmt +0 -0
  534. package/lib/ocaml/belt_SortArrayInt.cmti +0 -0
  535. package/lib/ocaml/belt_SortArrayInt.ml +263 -0
  536. package/lib/ocaml/belt_SortArrayInt.mli +93 -0
  537. package/lib/ocaml/belt_SortArrayString.cmi +0 -0
  538. package/lib/ocaml/belt_SortArrayString.cmt +0 -0
  539. package/lib/ocaml/belt_SortArrayString.cmti +0 -0
  540. package/lib/ocaml/belt_SortArrayString.ml +263 -0
  541. package/lib/ocaml/belt_SortArrayString.mli +93 -0
  542. package/lib/ocaml/belt_internalAVLset.cmt +0 -0
  543. package/lib/ocaml/belt_internalAVLset.cmti +0 -0
  544. package/lib/ocaml/belt_internalAVLset.ml +665 -0
  545. package/lib/ocaml/belt_internalAVLset.mli +124 -0
  546. package/lib/ocaml/belt_internalAVLtree.cmt +0 -0
  547. package/lib/ocaml/belt_internalAVLtree.cmti +0 -0
  548. package/lib/ocaml/belt_internalAVLtree.ml +762 -0
  549. package/lib/ocaml/belt_internalAVLtree.mli +215 -0
  550. package/lib/ocaml/belt_internalBuckets.cmt +0 -0
  551. package/lib/ocaml/belt_internalBuckets.cmti +0 -0
  552. package/lib/ocaml/belt_internalBuckets.ml +218 -0
  553. package/lib/ocaml/belt_internalBuckets.mli +57 -0
  554. package/lib/ocaml/belt_internalBucketsType.cmt +0 -0
  555. package/lib/ocaml/belt_internalBucketsType.cmti +0 -0
  556. package/lib/ocaml/belt_internalBucketsType.ml +59 -0
  557. package/lib/ocaml/belt_internalBucketsType.mli +46 -0
  558. package/lib/ocaml/belt_internalMapInt.cmt +0 -0
  559. package/lib/ocaml/belt_internalMapInt.ml +227 -0
  560. package/lib/ocaml/belt_internalMapString.cmt +0 -0
  561. package/lib/ocaml/belt_internalMapString.ml +227 -0
  562. package/lib/ocaml/belt_internalSetBuckets.cmt +0 -0
  563. package/lib/ocaml/belt_internalSetBuckets.cmti +0 -0
  564. package/lib/ocaml/belt_internalSetBuckets.ml +157 -0
  565. package/lib/ocaml/belt_internalSetBuckets.mli +47 -0
  566. package/lib/ocaml/belt_internalSetInt.cmt +0 -0
  567. package/lib/ocaml/belt_internalSetInt.ml +129 -0
  568. package/lib/ocaml/belt_internalSetString.cmt +0 -0
  569. package/lib/ocaml/belt_internalSetString.ml +129 -0
  570. package/lib/ocaml/belt_internals.cmti +0 -0
  571. package/lib/ocaml/belt_internals.mli +79 -0
  572. package/lib/ocaml/buffer.cmi +0 -0
  573. package/lib/ocaml/buffer.cmt +0 -0
  574. package/lib/ocaml/buffer.cmti +0 -0
  575. package/lib/ocaml/buffer.ml +250 -0
  576. package/lib/ocaml/buffer.mli +149 -0
  577. package/lib/ocaml/bytes.cmi +0 -0
  578. package/lib/ocaml/bytes.cmt +0 -0
  579. package/lib/ocaml/bytes.cmti +0 -0
  580. package/lib/ocaml/bytes.ml +431 -0
  581. package/lib/ocaml/bytes.mli +430 -0
  582. package/lib/ocaml/bytesLabels.cmi +0 -0
  583. package/lib/ocaml/bytesLabels.cmt +0 -0
  584. package/lib/ocaml/bytesLabels.cmti +0 -0
  585. package/lib/ocaml/bytesLabels.ml +428 -0
  586. package/lib/ocaml/bytesLabels.mli +276 -0
  587. package/lib/ocaml/callback.cmi +0 -0
  588. package/lib/ocaml/callback.cmt +0 -0
  589. package/lib/ocaml/callback.cmti +0 -0
  590. package/lib/ocaml/callback.ml +20 -0
  591. package/lib/ocaml/callback.mli +34 -0
  592. package/lib/ocaml/camlinternalLazy.cmi +0 -0
  593. package/lib/ocaml/camlinternalLazy.cmt +0 -0
  594. package/lib/ocaml/camlinternalLazy.cmti +0 -0
  595. package/lib/ocaml/camlinternalLazy.ml +89 -0
  596. package/lib/ocaml/camlinternalLazy.mli +27 -0
  597. package/lib/ocaml/camlinternalMod.cmi +0 -0
  598. package/lib/ocaml/camlinternalMod.cmt +0 -0
  599. package/lib/ocaml/camlinternalMod.cmti +0 -0
  600. package/lib/ocaml/camlinternalMod.ml +21 -0
  601. package/lib/ocaml/camlinternalMod.mli +25 -0
  602. package/lib/ocaml/char.cmi +0 -0
  603. package/lib/ocaml/char.cmt +0 -0
  604. package/lib/ocaml/char.cmti +0 -0
  605. package/lib/ocaml/char.ml +76 -0
  606. package/lib/ocaml/char.mli +72 -0
  607. package/lib/ocaml/complex.cmi +0 -0
  608. package/lib/ocaml/complex.cmt +0 -0
  609. package/lib/ocaml/complex.cmti +0 -0
  610. package/lib/ocaml/complex.ml +87 -0
  611. package/lib/ocaml/complex.mli +86 -0
  612. package/lib/ocaml/digest.cmi +0 -0
  613. package/lib/ocaml/digest.cmt +0 -0
  614. package/lib/ocaml/digest.cmti +0 -0
  615. package/lib/ocaml/digest.ml +66 -0
  616. package/lib/ocaml/digest.mli +68 -0
  617. package/lib/ocaml/dom.cmi +0 -0
  618. package/lib/ocaml/dom.cmt +0 -0
  619. package/lib/ocaml/dom.ml +296 -0
  620. package/lib/ocaml/dom_storage.cmi +0 -0
  621. package/lib/ocaml/dom_storage.cmt +0 -0
  622. package/lib/ocaml/dom_storage.ml +22 -0
  623. package/lib/ocaml/dom_storage2.cmi +0 -0
  624. package/lib/ocaml/dom_storage2.cmt +0 -0
  625. package/lib/ocaml/dom_storage2.ml +11 -0
  626. package/lib/ocaml/filename.cmi +0 -0
  627. package/lib/ocaml/filename.cmt +0 -0
  628. package/lib/ocaml/filename.cmti +0 -0
  629. package/lib/ocaml/filename.ml +233 -0
  630. package/lib/ocaml/filename.mli +134 -0
  631. package/lib/ocaml/genlex.cmi +0 -0
  632. package/lib/ocaml/genlex.cmt +0 -0
  633. package/lib/ocaml/genlex.cmti +0 -0
  634. package/lib/ocaml/genlex.ml +201 -0
  635. package/lib/ocaml/genlex.mli +73 -0
  636. package/lib/ocaml/hashmap.cppo.ml +214 -0
  637. package/lib/ocaml/hashmap.cppo.mli +54 -0
  638. package/lib/ocaml/hashset.cppo.ml +165 -0
  639. package/lib/ocaml/hashset.cppo.mli +77 -0
  640. package/lib/ocaml/hashtbl.cmi +0 -0
  641. package/lib/ocaml/hashtbl.cmt +0 -0
  642. package/lib/ocaml/hashtbl.cmti +0 -0
  643. package/lib/ocaml/hashtbl.ml +541 -0
  644. package/lib/ocaml/hashtbl.mli +411 -0
  645. package/lib/ocaml/hashtblLabels.cmi +0 -0
  646. package/lib/ocaml/hashtblLabels.cmt +0 -0
  647. package/lib/ocaml/hashtblLabels.ml +130 -0
  648. package/lib/ocaml/int32.cmi +0 -0
  649. package/lib/ocaml/int32.cmt +0 -0
  650. package/lib/ocaml/int32.cmti +0 -0
  651. package/lib/ocaml/int32.ml +64 -0
  652. package/lib/ocaml/int32.mli +186 -0
  653. package/lib/ocaml/int64.cmi +0 -0
  654. package/lib/ocaml/int64.cmt +0 -0
  655. package/lib/ocaml/int64.cmti +0 -0
  656. package/lib/ocaml/int64.ml +72 -0
  657. package/lib/ocaml/int64.mli +197 -0
  658. package/lib/ocaml/internal_map.cppo.ml +230 -0
  659. package/lib/ocaml/internal_set.cppo.ml +134 -0
  660. package/lib/ocaml/js.cmi +0 -0
  661. package/lib/ocaml/js.cmt +0 -0
  662. package/lib/ocaml/js.ml +313 -0
  663. package/lib/ocaml/js_OO.cmi +0 -0
  664. package/lib/ocaml/js_OO.cmt +0 -0
  665. package/lib/ocaml/js_OO.ml +180 -0
  666. package/lib/ocaml/js_array.cmi +0 -0
  667. package/lib/ocaml/js_array.cmt +0 -0
  668. package/lib/ocaml/js_array.ml +970 -0
  669. package/lib/ocaml/js_array2.cmi +0 -0
  670. package/lib/ocaml/js_array2.cmt +0 -0
  671. package/lib/ocaml/js_array2.ml +1065 -0
  672. package/lib/ocaml/js_bigint.cmi +0 -0
  673. package/lib/ocaml/js_bigint.cmt +0 -0
  674. package/lib/ocaml/js_bigint.ml +3 -0
  675. package/lib/ocaml/js_cast.cmi +0 -0
  676. package/lib/ocaml/js_cast.cmt +0 -0
  677. package/lib/ocaml/js_cast.cmti +0 -0
  678. package/lib/ocaml/js_cast.ml +29 -0
  679. package/lib/ocaml/js_cast.mli +45 -0
  680. package/lib/ocaml/js_console.cmi +0 -0
  681. package/lib/ocaml/js_console.cmt +0 -0
  682. package/lib/ocaml/js_console.ml +51 -0
  683. package/lib/ocaml/js_date.cmi +0 -0
  684. package/lib/ocaml/js_date.cmt +0 -0
  685. package/lib/ocaml/js_date.ml +1263 -0
  686. package/lib/ocaml/js_dict.cmi +0 -0
  687. package/lib/ocaml/js_dict.cmt +0 -0
  688. package/lib/ocaml/js_dict.cmti +0 -0
  689. package/lib/ocaml/js_dict.ml +114 -0
  690. package/lib/ocaml/js_dict.mli +152 -0
  691. package/lib/ocaml/js_exn.cmi +0 -0
  692. package/lib/ocaml/js_exn.cmt +0 -0
  693. package/lib/ocaml/js_exn.cmti +0 -0
  694. package/lib/ocaml/js_exn.ml +102 -0
  695. package/lib/ocaml/js_exn.mli +79 -0
  696. package/lib/ocaml/js_float.cmi +0 -0
  697. package/lib/ocaml/js_float.cmt +0 -0
  698. package/lib/ocaml/js_float.ml +294 -0
  699. package/lib/ocaml/js_global.cmi +0 -0
  700. package/lib/ocaml/js_global.cmt +0 -0
  701. package/lib/ocaml/js_global.ml +185 -0
  702. package/lib/ocaml/js_int.cmi +0 -0
  703. package/lib/ocaml/js_int.cmt +0 -0
  704. package/lib/ocaml/js_int.ml +158 -0
  705. package/lib/ocaml/js_json.cmi +0 -0
  706. package/lib/ocaml/js_json.cmt +0 -0
  707. package/lib/ocaml/js_json.cmti +0 -0
  708. package/lib/ocaml/js_json.ml +195 -0
  709. package/lib/ocaml/js_json.mli +244 -0
  710. package/lib/ocaml/js_list.cmi +0 -0
  711. package/lib/ocaml/js_list.cmt +0 -0
  712. package/lib/ocaml/js_list.cmti +0 -0
  713. package/lib/ocaml/js_list.ml +174 -0
  714. package/lib/ocaml/js_list.mli +72 -0
  715. package/lib/ocaml/js_map.cmi +0 -0
  716. package/lib/ocaml/js_map.cmt +0 -0
  717. package/lib/ocaml/js_map.ml +3 -0
  718. package/lib/ocaml/js_mapperRt.cmi +0 -0
  719. package/lib/ocaml/js_mapperRt.cmt +0 -0
  720. package/lib/ocaml/js_mapperRt.cmti +0 -0
  721. package/lib/ocaml/js_mapperRt.ml +50 -0
  722. package/lib/ocaml/js_mapperRt.mli +44 -0
  723. package/lib/ocaml/js_math.cmi +0 -0
  724. package/lib/ocaml/js_math.cmt +0 -0
  725. package/lib/ocaml/js_math.ml +626 -0
  726. package/lib/ocaml/js_null.cmi +0 -0
  727. package/lib/ocaml/js_null.cmt +0 -0
  728. package/lib/ocaml/js_null.cmti +0 -0
  729. package/lib/ocaml/js_null.ml +57 -0
  730. package/lib/ocaml/js_null.mli +87 -0
  731. package/lib/ocaml/js_null_undefined.cmi +0 -0
  732. package/lib/ocaml/js_null_undefined.cmt +0 -0
  733. package/lib/ocaml/js_null_undefined.cmti +0 -0
  734. package/lib/ocaml/js_null_undefined.ml +50 -0
  735. package/lib/ocaml/js_null_undefined.mli +85 -0
  736. package/lib/ocaml/js_obj.cmi +0 -0
  737. package/lib/ocaml/js_obj.cmt +0 -0
  738. package/lib/ocaml/js_obj.ml +100 -0
  739. package/lib/ocaml/js_option.cmi +0 -0
  740. package/lib/ocaml/js_option.cmt +0 -0
  741. package/lib/ocaml/js_option.cmti +0 -0
  742. package/lib/ocaml/js_option.ml +203 -0
  743. package/lib/ocaml/js_option.mli +52 -0
  744. package/lib/ocaml/js_promise.cmi +0 -0
  745. package/lib/ocaml/js_promise.cmt +0 -0
  746. package/lib/ocaml/js_promise.ml +100 -0
  747. package/lib/ocaml/js_re.cmi +0 -0
  748. package/lib/ocaml/js_re.cmt +0 -0
  749. package/lib/ocaml/js_re.ml +184 -0
  750. package/lib/ocaml/js_result.cmi +0 -0
  751. package/lib/ocaml/js_result.cmt +0 -0
  752. package/lib/ocaml/js_result.cmti +0 -0
  753. package/lib/ocaml/js_result.ml +28 -0
  754. package/lib/ocaml/js_result.mli +28 -0
  755. package/lib/ocaml/js_set.cmi +0 -0
  756. package/lib/ocaml/js_set.cmt +0 -0
  757. package/lib/ocaml/js_set.ml +3 -0
  758. package/lib/ocaml/js_string.cmi +0 -0
  759. package/lib/ocaml/js_string.cmt +0 -0
  760. package/lib/ocaml/js_string.ml +914 -0
  761. package/lib/ocaml/js_string2.cmi +0 -0
  762. package/lib/ocaml/js_string2.cmt +0 -0
  763. package/lib/ocaml/js_string2.ml +912 -0
  764. package/lib/ocaml/js_typed_array.cmi +0 -0
  765. package/lib/ocaml/js_typed_array.cmt +0 -0
  766. package/lib/ocaml/js_typed_array.cppo.ml +429 -0
  767. package/lib/ocaml/js_typed_array.ml +1405 -0
  768. package/lib/ocaml/js_typed_array2.cmi +0 -0
  769. package/lib/ocaml/js_typed_array2.cmt +0 -0
  770. package/lib/ocaml/js_typed_array2.cppo.ml +296 -0
  771. package/lib/ocaml/js_typed_array2.ml +1269 -0
  772. package/lib/ocaml/js_types.cmi +0 -0
  773. package/lib/ocaml/js_types.cmt +0 -0
  774. package/lib/ocaml/js_types.cmti +0 -0
  775. package/lib/ocaml/js_types.ml +118 -0
  776. package/lib/ocaml/js_types.mli +78 -0
  777. package/lib/ocaml/js_undefined.cmi +0 -0
  778. package/lib/ocaml/js_undefined.cmt +0 -0
  779. package/lib/ocaml/js_undefined.cmti +0 -0
  780. package/lib/ocaml/js_undefined.ml +59 -0
  781. package/lib/ocaml/js_undefined.mli +92 -0
  782. package/lib/ocaml/js_vector.cmi +0 -0
  783. package/lib/ocaml/js_vector.cmt +0 -0
  784. package/lib/ocaml/js_vector.cmti +0 -0
  785. package/lib/ocaml/js_vector.ml +143 -0
  786. package/lib/ocaml/js_vector.mli +92 -0
  787. package/lib/ocaml/js_weakmap.cmi +0 -0
  788. package/lib/ocaml/js_weakmap.cmt +0 -0
  789. package/lib/ocaml/js_weakmap.ml +3 -0
  790. package/lib/ocaml/js_weakset.cmi +0 -0
  791. package/lib/ocaml/js_weakset.cmt +0 -0
  792. package/lib/ocaml/js_weakset.ml +3 -0
  793. package/lib/ocaml/jsx.cmi +0 -0
  794. package/lib/ocaml/jsx.cmt +0 -0
  795. package/lib/ocaml/jsx.ml +39 -0
  796. package/lib/ocaml/jsxDOM.cmi +0 -0
  797. package/lib/ocaml/jsxDOM.cmt +0 -0
  798. package/lib/ocaml/jsxDOM.ml +2087 -0
  799. package/lib/ocaml/jsxDOMStyle.cmi +0 -0
  800. package/lib/ocaml/jsxDOMStyle.cmt +0 -0
  801. package/lib/ocaml/jsxDOMStyle.ml +777 -0
  802. package/lib/ocaml/jsxEvent.cmi +0 -0
  803. package/lib/ocaml/jsxEvent.cmt +0 -0
  804. package/lib/ocaml/jsxEvent.ml +358 -0
  805. package/lib/ocaml/lazy.cmi +0 -0
  806. package/lib/ocaml/lazy.cmt +0 -0
  807. package/lib/ocaml/lazy.cmti +0 -0
  808. package/lib/ocaml/lazy.ml +70 -0
  809. package/lib/ocaml/lazy.mli +95 -0
  810. package/lib/ocaml/lexing.cmi +0 -0
  811. package/lib/ocaml/lexing.cmt +0 -0
  812. package/lib/ocaml/lexing.cmti +0 -0
  813. package/lib/ocaml/lexing.ml +230 -0
  814. package/lib/ocaml/lexing.mli +172 -0
  815. package/lib/ocaml/list.cmi +0 -0
  816. package/lib/ocaml/list.cmt +0 -0
  817. package/lib/ocaml/list.cmti +0 -0
  818. package/lib/ocaml/list.ml +485 -0
  819. package/lib/ocaml/list.mli +347 -0
  820. package/lib/ocaml/listLabels.cmi +0 -0
  821. package/lib/ocaml/listLabels.cmt +0 -0
  822. package/lib/ocaml/listLabels.cmti +0 -0
  823. package/lib/ocaml/listLabels.ml +485 -0
  824. package/lib/ocaml/listLabels.mli +353 -0
  825. package/lib/ocaml/map.cmi +0 -0
  826. package/lib/ocaml/map.cmt +0 -0
  827. package/lib/ocaml/map.cmti +0 -0
  828. package/lib/ocaml/map.cppo.ml +174 -0
  829. package/lib/ocaml/map.cppo.mli +191 -0
  830. package/lib/ocaml/map.ml +480 -0
  831. package/lib/ocaml/map.mli +315 -0
  832. package/lib/ocaml/mapLabels.cmi +0 -0
  833. package/lib/ocaml/mapLabels.cmt +0 -0
  834. package/lib/ocaml/mapLabels.ml +480 -0
  835. package/lib/ocaml/mapm.cppo.ml +177 -0
  836. package/lib/ocaml/mapm.cppo.mli +138 -0
  837. package/lib/ocaml/moreLabels.cmi +0 -0
  838. package/lib/ocaml/moreLabels.cmt +0 -0
  839. package/lib/ocaml/moreLabels.cmti +0 -0
  840. package/lib/ocaml/moreLabels.ml +22 -0
  841. package/lib/ocaml/moreLabels.mli +198 -0
  842. package/lib/ocaml/node.cmi +0 -0
  843. package/lib/ocaml/node.cmt +0 -0
  844. package/lib/ocaml/node.ml +84 -0
  845. package/lib/ocaml/node_buffer.cmi +0 -0
  846. package/lib/ocaml/node_buffer.cmt +0 -0
  847. package/lib/ocaml/node_buffer.ml +47 -0
  848. package/lib/ocaml/node_child_process.cmi +0 -0
  849. package/lib/ocaml/node_child_process.cmt +0 -0
  850. package/lib/ocaml/node_child_process.ml +50 -0
  851. package/lib/ocaml/node_fs.cmi +0 -0
  852. package/lib/ocaml/node_fs.cmt +0 -0
  853. package/lib/ocaml/node_fs.ml +153 -0
  854. package/lib/ocaml/node_module.cmi +0 -0
  855. package/lib/ocaml/node_module.cmt +0 -0
  856. package/lib/ocaml/node_module.ml +29 -0
  857. package/lib/ocaml/node_path.cmi +0 -0
  858. package/lib/ocaml/node_path.cmt +0 -0
  859. package/lib/ocaml/node_path.ml +71 -0
  860. package/lib/ocaml/node_process.cmi +0 -0
  861. package/lib/ocaml/node_process.cmt +0 -0
  862. package/lib/ocaml/node_process.cmti +0 -0
  863. package/lib/ocaml/node_process.ml +59 -0
  864. package/lib/ocaml/node_process.mli +48 -0
  865. package/lib/ocaml/obj.cmi +0 -0
  866. package/lib/ocaml/obj.cmt +0 -0
  867. package/lib/ocaml/obj.cmti +0 -0
  868. package/lib/ocaml/obj.ml +29 -0
  869. package/lib/ocaml/obj.mli +62 -0
  870. package/lib/ocaml/parsing.cmi +0 -0
  871. package/lib/ocaml/parsing.cmt +0 -0
  872. package/lib/ocaml/parsing.cmti +0 -0
  873. package/lib/ocaml/parsing.ml +212 -0
  874. package/lib/ocaml/parsing.mli +105 -0
  875. package/lib/ocaml/pervasives.cmi +0 -0
  876. package/lib/ocaml/pervasives.cmt +0 -0
  877. package/lib/ocaml/pervasives.cmti +0 -0
  878. package/lib/ocaml/pervasives.ml +297 -0
  879. package/lib/ocaml/pervasives.mli +771 -0
  880. package/lib/ocaml/printexc.cmi +0 -0
  881. package/lib/ocaml/printexc.cmt +0 -0
  882. package/lib/ocaml/printexc.cmti +0 -0
  883. package/lib/ocaml/printexc.ml +79 -0
  884. package/lib/ocaml/printexc.mli +57 -0
  885. package/lib/ocaml/queue.cmi +0 -0
  886. package/lib/ocaml/queue.cmt +0 -0
  887. package/lib/ocaml/queue.cmti +0 -0
  888. package/lib/ocaml/queue.ml +132 -0
  889. package/lib/ocaml/queue.mli +82 -0
  890. package/lib/ocaml/random.cmi +0 -0
  891. package/lib/ocaml/random.cmt +0 -0
  892. package/lib/ocaml/random.cmti +0 -0
  893. package/lib/ocaml/random.ml +273 -0
  894. package/lib/ocaml/random.mli +102 -0
  895. package/lib/ocaml/set.cmi +0 -0
  896. package/lib/ocaml/set.cmt +0 -0
  897. package/lib/ocaml/set.cmti +0 -0
  898. package/lib/ocaml/set.ml +526 -0
  899. package/lib/ocaml/set.mli +266 -0
  900. package/lib/ocaml/setLabels.cmi +0 -0
  901. package/lib/ocaml/setLabels.cmt +0 -0
  902. package/lib/ocaml/setLabels.ml +526 -0
  903. package/lib/ocaml/setm.cppo.ml +346 -0
  904. package/lib/ocaml/setm.cppo.mli +126 -0
  905. package/lib/ocaml/sort.cmi +0 -0
  906. package/lib/ocaml/sort.cmt +0 -0
  907. package/lib/ocaml/sort.cmti +0 -0
  908. package/lib/ocaml/sort.cppo.ml +267 -0
  909. package/lib/ocaml/sort.cppo.mli +96 -0
  910. package/lib/ocaml/sort.ml +99 -0
  911. package/lib/ocaml/sort.mli +44 -0
  912. package/lib/ocaml/stack.cmi +0 -0
  913. package/lib/ocaml/stack.cmt +0 -0
  914. package/lib/ocaml/stack.cmti +0 -0
  915. package/lib/ocaml/stack.ml +44 -0
  916. package/lib/ocaml/stack.mli +63 -0
  917. package/lib/ocaml/stdLabels.cmi +0 -0
  918. package/lib/ocaml/stdLabels.cmt +0 -0
  919. package/lib/ocaml/stdLabels.cmti +0 -0
  920. package/lib/ocaml/stdLabels.ml +24 -0
  921. package/lib/ocaml/stdLabels.mli +29 -0
  922. package/lib/ocaml/stream.cmi +0 -0
  923. package/lib/ocaml/stream.cmt +0 -0
  924. package/lib/ocaml/stream.cmti +0 -0
  925. package/lib/ocaml/stream.ml +213 -0
  926. package/lib/ocaml/stream.mli +108 -0
  927. package/lib/ocaml/string.cmi +0 -0
  928. package/lib/ocaml/string.cmt +0 -0
  929. package/lib/ocaml/string.cmti +0 -0
  930. package/lib/ocaml/string.ml +190 -0
  931. package/lib/ocaml/string.mli +286 -0
  932. package/lib/ocaml/stringLabels.cmi +0 -0
  933. package/lib/ocaml/stringLabels.cmt +0 -0
  934. package/lib/ocaml/stringLabels.cmti +0 -0
  935. package/lib/ocaml/stringLabels.ml +190 -0
  936. package/lib/ocaml/stringLabels.mli +241 -0
  937. package/lib/ocaml/sys.cmi +0 -0
  938. package/lib/ocaml/sys.cmt +0 -0
  939. package/lib/ocaml/sys.cmti +0 -0
  940. package/lib/ocaml/sys.ml +135 -0
  941. package/lib/ocaml/sys.mli +333 -0
  942. package/lib/ocaml/uchar.cmi +0 -0
  943. package/lib/ocaml/uchar.cmt +0 -0
  944. package/lib/ocaml/uchar.cmti +0 -0
  945. package/lib/ocaml/uchar.ml +58 -0
  946. package/lib/ocaml/uchar.mli +98 -0
  947. package/linux/bsb_helper.exe +0 -0
  948. package/linux/bsc.exe +0 -0
  949. package/linux/ninja.COPYING +202 -0
  950. package/linux/ninja.exe +0 -0
  951. package/linux/refmt.exe +0 -0
  952. package/linux/rescript.exe +0 -0
  953. package/openbsd/.keep +0 -0
  954. package/package.json +71 -0
  955. package/rescript +591 -0
  956. package/scripts/LICENSE.ml +27 -0
  957. package/scripts/bin_path.js +38 -0
  958. package/scripts/buckle_lto.js +55 -0
  959. package/scripts/build_sorted.ml +233 -0
  960. package/scripts/buildocaml.js +102 -0
  961. package/scripts/caml_oo_curry_gen.ml +71 -0
  962. package/scripts/checkUnused.js +63 -0
  963. package/scripts/ciTest.js +172 -0
  964. package/scripts/config.js +24 -0
  965. package/scripts/cover.sh +3 -0
  966. package/scripts/curry_gen.ml +167 -0
  967. package/scripts/dbg +13 -0
  968. package/scripts/dedupe.js +44 -0
  969. package/scripts/doc_gen.js +117 -0
  970. package/scripts/install.js +237 -0
  971. package/scripts/installUtils.js +61 -0
  972. package/scripts/js_internal_gen.js +135 -0
  973. package/scripts/jsconfig.json +12 -0
  974. package/scripts/littlecase.js +21 -0
  975. package/scripts/ninja.js +1980 -0
  976. package/scripts/ninjaFactory.js +36 -0
  977. package/scripts/pack.js +107 -0
  978. package/scripts/prebuilt.js +99 -0
  979. package/scripts/release.js +41 -0
  980. package/scripts/repl.js +151 -0
  981. package/scripts/rescript_arg.js +168 -0
  982. package/scripts/rescript_convert.js +128 -0
  983. package/scripts/rescript_dump.js +48 -0
  984. package/scripts/rescript_format.js +194 -0
  985. package/scripts/shake.js +138 -0
  986. package/scripts/tasks.js +149 -0
  987. package/scripts/test.sh +3 -0
  988. package/scripts/tmp.js +98 -0
  989. package/scripts/validate.js +41 -0
  990. package/vendor/ninja.tar.gz +0 -0
  991. package/vendor/ocaml.tar.gz +0 -0
  992. package/win32/bsb_helper.exe +0 -0
  993. package/win32/bsc.exe +0 -0
  994. package/win32/ninja.COPYING +202 -0
  995. package/win32/ninja.exe +0 -0
  996. package/win32/refmt.exe +0 -0
  997. package/win32/rescript.exe +0 -0
package/lib/js/set.js ADDED
@@ -0,0 +1,953 @@
1
+ 'use strict';
2
+
3
+ var List = require("./list.js");
4
+ var Curry = require("./curry.js");
5
+ var Caml_option = require("./caml_option.js");
6
+
7
+ function Make(funarg) {
8
+ var height = function (param) {
9
+ if (param) {
10
+ return param.h;
11
+ } else {
12
+ return 0;
13
+ }
14
+ };
15
+ var create = function (l, v, r) {
16
+ var hl = l ? l.h : 0;
17
+ var hr = r ? r.h : 0;
18
+ return /* Node */{
19
+ l: l,
20
+ v: v,
21
+ r: r,
22
+ h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0
23
+ };
24
+ };
25
+ var bal = function (l, v, r) {
26
+ var hl = l ? l.h : 0;
27
+ var hr = r ? r.h : 0;
28
+ if (hl > (hr + 2 | 0)) {
29
+ if (l) {
30
+ var lr = l.r;
31
+ var lv = l.v;
32
+ var ll = l.l;
33
+ if (height(ll) >= height(lr)) {
34
+ return create(ll, lv, create(lr, v, r));
35
+ }
36
+ if (lr) {
37
+ return create(create(ll, lv, lr.l), lr.v, create(lr.r, v, r));
38
+ }
39
+ throw {
40
+ RE_EXN_ID: "Invalid_argument",
41
+ _1: "Set.bal",
42
+ Error: new Error()
43
+ };
44
+ }
45
+ throw {
46
+ RE_EXN_ID: "Invalid_argument",
47
+ _1: "Set.bal",
48
+ Error: new Error()
49
+ };
50
+ }
51
+ if (hr <= (hl + 2 | 0)) {
52
+ return /* Node */{
53
+ l: l,
54
+ v: v,
55
+ r: r,
56
+ h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0
57
+ };
58
+ }
59
+ if (r) {
60
+ var rr = r.r;
61
+ var rv = r.v;
62
+ var rl = r.l;
63
+ if (height(rr) >= height(rl)) {
64
+ return create(create(l, v, rl), rv, rr);
65
+ }
66
+ if (rl) {
67
+ return create(create(l, v, rl.l), rl.v, create(rl.r, rv, rr));
68
+ }
69
+ throw {
70
+ RE_EXN_ID: "Invalid_argument",
71
+ _1: "Set.bal",
72
+ Error: new Error()
73
+ };
74
+ }
75
+ throw {
76
+ RE_EXN_ID: "Invalid_argument",
77
+ _1: "Set.bal",
78
+ Error: new Error()
79
+ };
80
+ };
81
+ var add = function (x, t) {
82
+ if (!t) {
83
+ return /* Node */{
84
+ l: /* Empty */0,
85
+ v: x,
86
+ r: /* Empty */0,
87
+ h: 1
88
+ };
89
+ }
90
+ var r = t.r;
91
+ var v = t.v;
92
+ var l = t.l;
93
+ var c = Curry._2(funarg.compare, x, v);
94
+ if (c === 0) {
95
+ return t;
96
+ }
97
+ if (c < 0) {
98
+ var ll = add(x, l);
99
+ if (l === ll) {
100
+ return t;
101
+ } else {
102
+ return bal(ll, v, r);
103
+ }
104
+ }
105
+ var rr = add(x, r);
106
+ if (r === rr) {
107
+ return t;
108
+ } else {
109
+ return bal(l, v, rr);
110
+ }
111
+ };
112
+ var singleton = function (x) {
113
+ return /* Node */{
114
+ l: /* Empty */0,
115
+ v: x,
116
+ r: /* Empty */0,
117
+ h: 1
118
+ };
119
+ };
120
+ var add_min_element = function (x, param) {
121
+ if (param) {
122
+ return bal(add_min_element(x, param.l), param.v, param.r);
123
+ } else {
124
+ return singleton(x);
125
+ }
126
+ };
127
+ var add_max_element = function (x, param) {
128
+ if (param) {
129
+ return bal(param.l, param.v, add_max_element(x, param.r));
130
+ } else {
131
+ return singleton(x);
132
+ }
133
+ };
134
+ var join = function (l, v, r) {
135
+ if (!l) {
136
+ return add_min_element(v, r);
137
+ }
138
+ if (!r) {
139
+ return add_max_element(v, l);
140
+ }
141
+ var rh = r.h;
142
+ var lh = l.h;
143
+ if (lh > (rh + 2 | 0)) {
144
+ return bal(l.l, l.v, join(l.r, v, r));
145
+ } else if (rh > (lh + 2 | 0)) {
146
+ return bal(join(l, v, r.l), r.v, r.r);
147
+ } else {
148
+ return create(l, v, r);
149
+ }
150
+ };
151
+ var min_elt = function (_param) {
152
+ while(true) {
153
+ var param = _param;
154
+ if (param) {
155
+ var l = param.l;
156
+ if (!l) {
157
+ return param.v;
158
+ }
159
+ _param = l;
160
+ continue ;
161
+ }
162
+ throw {
163
+ RE_EXN_ID: "Not_found",
164
+ Error: new Error()
165
+ };
166
+ };
167
+ };
168
+ var min_elt_opt = function (_param) {
169
+ while(true) {
170
+ var param = _param;
171
+ if (!param) {
172
+ return ;
173
+ }
174
+ var l = param.l;
175
+ if (!l) {
176
+ return Caml_option.some(param.v);
177
+ }
178
+ _param = l;
179
+ continue ;
180
+ };
181
+ };
182
+ var max_elt = function (_param) {
183
+ while(true) {
184
+ var param = _param;
185
+ if (param) {
186
+ var r = param.r;
187
+ if (!r) {
188
+ return param.v;
189
+ }
190
+ _param = r;
191
+ continue ;
192
+ }
193
+ throw {
194
+ RE_EXN_ID: "Not_found",
195
+ Error: new Error()
196
+ };
197
+ };
198
+ };
199
+ var max_elt_opt = function (_param) {
200
+ while(true) {
201
+ var param = _param;
202
+ if (!param) {
203
+ return ;
204
+ }
205
+ var r = param.r;
206
+ if (!r) {
207
+ return Caml_option.some(param.v);
208
+ }
209
+ _param = r;
210
+ continue ;
211
+ };
212
+ };
213
+ var remove_min_elt = function (param) {
214
+ if (param) {
215
+ var l = param.l;
216
+ if (l) {
217
+ return bal(remove_min_elt(l), param.v, param.r);
218
+ } else {
219
+ return param.r;
220
+ }
221
+ }
222
+ throw {
223
+ RE_EXN_ID: "Invalid_argument",
224
+ _1: "Set.remove_min_elt",
225
+ Error: new Error()
226
+ };
227
+ };
228
+ var concat = function (t1, t2) {
229
+ if (t1) {
230
+ if (t2) {
231
+ return join(t1, min_elt(t2), remove_min_elt(t2));
232
+ } else {
233
+ return t1;
234
+ }
235
+ } else {
236
+ return t2;
237
+ }
238
+ };
239
+ var split = function (x, param) {
240
+ if (!param) {
241
+ return [
242
+ /* Empty */0,
243
+ false,
244
+ /* Empty */0
245
+ ];
246
+ }
247
+ var r = param.r;
248
+ var v = param.v;
249
+ var l = param.l;
250
+ var c = Curry._2(funarg.compare, x, v);
251
+ if (c === 0) {
252
+ return [
253
+ l,
254
+ true,
255
+ r
256
+ ];
257
+ }
258
+ if (c < 0) {
259
+ var match = split(x, l);
260
+ return [
261
+ match[0],
262
+ match[1],
263
+ join(match[2], v, r)
264
+ ];
265
+ }
266
+ var match$1 = split(x, r);
267
+ return [
268
+ join(l, v, match$1[0]),
269
+ match$1[1],
270
+ match$1[2]
271
+ ];
272
+ };
273
+ var is_empty = function (param) {
274
+ if (param) {
275
+ return false;
276
+ } else {
277
+ return true;
278
+ }
279
+ };
280
+ var mem = function (x, _param) {
281
+ while(true) {
282
+ var param = _param;
283
+ if (!param) {
284
+ return false;
285
+ }
286
+ var c = Curry._2(funarg.compare, x, param.v);
287
+ if (c === 0) {
288
+ return true;
289
+ }
290
+ _param = c < 0 ? param.l : param.r;
291
+ continue ;
292
+ };
293
+ };
294
+ var remove = function (x, t) {
295
+ if (!t) {
296
+ return /* Empty */0;
297
+ }
298
+ var r = t.r;
299
+ var v = t.v;
300
+ var l = t.l;
301
+ var c = Curry._2(funarg.compare, x, v);
302
+ if (c === 0) {
303
+ if (l) {
304
+ if (r) {
305
+ return bal(l, min_elt(r), remove_min_elt(r));
306
+ } else {
307
+ return l;
308
+ }
309
+ } else {
310
+ return r;
311
+ }
312
+ }
313
+ if (c < 0) {
314
+ var ll = remove(x, l);
315
+ if (l === ll) {
316
+ return t;
317
+ } else {
318
+ return bal(ll, v, r);
319
+ }
320
+ }
321
+ var rr = remove(x, r);
322
+ if (r === rr) {
323
+ return t;
324
+ } else {
325
+ return bal(l, v, rr);
326
+ }
327
+ };
328
+ var union = function (s1, s2) {
329
+ if (!s1) {
330
+ return s2;
331
+ }
332
+ if (!s2) {
333
+ return s1;
334
+ }
335
+ var h2 = s2.h;
336
+ var v2 = s2.v;
337
+ var h1 = s1.h;
338
+ var v1 = s1.v;
339
+ if (h1 >= h2) {
340
+ if (h2 === 1) {
341
+ return add(v2, s1);
342
+ }
343
+ var match = split(v1, s2);
344
+ return join(union(s1.l, match[0]), v1, union(s1.r, match[2]));
345
+ }
346
+ if (h1 === 1) {
347
+ return add(v1, s2);
348
+ }
349
+ var match$1 = split(v2, s1);
350
+ return join(union(match$1[0], s2.l), v2, union(match$1[2], s2.r));
351
+ };
352
+ var inter = function (s1, s2) {
353
+ if (!s1) {
354
+ return /* Empty */0;
355
+ }
356
+ if (!s2) {
357
+ return /* Empty */0;
358
+ }
359
+ var r1 = s1.r;
360
+ var v1 = s1.v;
361
+ var l1 = s1.l;
362
+ var match = split(v1, s2);
363
+ var l2 = match[0];
364
+ if (match[1]) {
365
+ return join(inter(l1, l2), v1, inter(r1, match[2]));
366
+ } else {
367
+ return concat(inter(l1, l2), inter(r1, match[2]));
368
+ }
369
+ };
370
+ var diff = function (s1, s2) {
371
+ if (!s1) {
372
+ return /* Empty */0;
373
+ }
374
+ if (!s2) {
375
+ return s1;
376
+ }
377
+ var r1 = s1.r;
378
+ var v1 = s1.v;
379
+ var l1 = s1.l;
380
+ var match = split(v1, s2);
381
+ var l2 = match[0];
382
+ if (match[1]) {
383
+ return concat(diff(l1, l2), diff(r1, match[2]));
384
+ } else {
385
+ return join(diff(l1, l2), v1, diff(r1, match[2]));
386
+ }
387
+ };
388
+ var cons_enum = function (_s, _e) {
389
+ while(true) {
390
+ var e = _e;
391
+ var s = _s;
392
+ if (!s) {
393
+ return e;
394
+ }
395
+ _e = /* More */{
396
+ _0: s.v,
397
+ _1: s.r,
398
+ _2: e
399
+ };
400
+ _s = s.l;
401
+ continue ;
402
+ };
403
+ };
404
+ var compare = function (s1, s2) {
405
+ var _e1 = cons_enum(s1, /* End */0);
406
+ var _e2 = cons_enum(s2, /* End */0);
407
+ while(true) {
408
+ var e2 = _e2;
409
+ var e1 = _e1;
410
+ if (!e1) {
411
+ if (e2) {
412
+ return -1;
413
+ } else {
414
+ return 0;
415
+ }
416
+ }
417
+ if (!e2) {
418
+ return 1;
419
+ }
420
+ var c = Curry._2(funarg.compare, e1._0, e2._0);
421
+ if (c !== 0) {
422
+ return c;
423
+ }
424
+ _e2 = cons_enum(e2._1, e2._2);
425
+ _e1 = cons_enum(e1._1, e1._2);
426
+ continue ;
427
+ };
428
+ };
429
+ var equal = function (s1, s2) {
430
+ return compare(s1, s2) === 0;
431
+ };
432
+ var subset = function (_s1, _s2) {
433
+ while(true) {
434
+ var s2 = _s2;
435
+ var s1 = _s1;
436
+ if (!s1) {
437
+ return true;
438
+ }
439
+ if (!s2) {
440
+ return false;
441
+ }
442
+ var r2 = s2.r;
443
+ var l2 = s2.l;
444
+ var r1 = s1.r;
445
+ var v1 = s1.v;
446
+ var l1 = s1.l;
447
+ var c = Curry._2(funarg.compare, v1, s2.v);
448
+ if (c === 0) {
449
+ if (!subset(l1, l2)) {
450
+ return false;
451
+ }
452
+ _s2 = r2;
453
+ _s1 = r1;
454
+ continue ;
455
+ }
456
+ if (c < 0) {
457
+ if (!subset(/* Node */{
458
+ l: l1,
459
+ v: v1,
460
+ r: /* Empty */0,
461
+ h: 0
462
+ }, l2)) {
463
+ return false;
464
+ }
465
+ _s1 = r1;
466
+ continue ;
467
+ }
468
+ if (!subset(/* Node */{
469
+ l: /* Empty */0,
470
+ v: v1,
471
+ r: r1,
472
+ h: 0
473
+ }, r2)) {
474
+ return false;
475
+ }
476
+ _s1 = l1;
477
+ continue ;
478
+ };
479
+ };
480
+ var iter = function (f, _param) {
481
+ while(true) {
482
+ var param = _param;
483
+ if (!param) {
484
+ return ;
485
+ }
486
+ iter(f, param.l);
487
+ Curry._1(f, param.v);
488
+ _param = param.r;
489
+ continue ;
490
+ };
491
+ };
492
+ var fold = function (f, _s, _accu) {
493
+ while(true) {
494
+ var accu = _accu;
495
+ var s = _s;
496
+ if (!s) {
497
+ return accu;
498
+ }
499
+ _accu = Curry._2(f, s.v, fold(f, s.l, accu));
500
+ _s = s.r;
501
+ continue ;
502
+ };
503
+ };
504
+ var for_all = function (p, _param) {
505
+ while(true) {
506
+ var param = _param;
507
+ if (!param) {
508
+ return true;
509
+ }
510
+ if (!Curry._1(p, param.v)) {
511
+ return false;
512
+ }
513
+ if (!for_all(p, param.l)) {
514
+ return false;
515
+ }
516
+ _param = param.r;
517
+ continue ;
518
+ };
519
+ };
520
+ var exists = function (p, _param) {
521
+ while(true) {
522
+ var param = _param;
523
+ if (!param) {
524
+ return false;
525
+ }
526
+ if (Curry._1(p, param.v)) {
527
+ return true;
528
+ }
529
+ if (exists(p, param.l)) {
530
+ return true;
531
+ }
532
+ _param = param.r;
533
+ continue ;
534
+ };
535
+ };
536
+ var filter = function (p, t) {
537
+ if (!t) {
538
+ return /* Empty */0;
539
+ }
540
+ var r = t.r;
541
+ var v = t.v;
542
+ var l = t.l;
543
+ var l$p = filter(p, l);
544
+ var pv = Curry._1(p, v);
545
+ var r$p = filter(p, r);
546
+ if (pv) {
547
+ if (l === l$p && r === r$p) {
548
+ return t;
549
+ } else {
550
+ return join(l$p, v, r$p);
551
+ }
552
+ } else {
553
+ return concat(l$p, r$p);
554
+ }
555
+ };
556
+ var partition = function (p, param) {
557
+ if (!param) {
558
+ return [
559
+ /* Empty */0,
560
+ /* Empty */0
561
+ ];
562
+ }
563
+ var v = param.v;
564
+ var match = partition(p, param.l);
565
+ var lf = match[1];
566
+ var lt = match[0];
567
+ var pv = Curry._1(p, v);
568
+ var match$1 = partition(p, param.r);
569
+ var rf = match$1[1];
570
+ var rt = match$1[0];
571
+ if (pv) {
572
+ return [
573
+ join(lt, v, rt),
574
+ concat(lf, rf)
575
+ ];
576
+ } else {
577
+ return [
578
+ concat(lt, rt),
579
+ join(lf, v, rf)
580
+ ];
581
+ }
582
+ };
583
+ var cardinal = function (param) {
584
+ if (param) {
585
+ return (cardinal(param.l) + 1 | 0) + cardinal(param.r) | 0;
586
+ } else {
587
+ return 0;
588
+ }
589
+ };
590
+ var elements_aux = function (_accu, _param) {
591
+ while(true) {
592
+ var param = _param;
593
+ var accu = _accu;
594
+ if (!param) {
595
+ return accu;
596
+ }
597
+ _param = param.l;
598
+ _accu = {
599
+ hd: param.v,
600
+ tl: elements_aux(accu, param.r)
601
+ };
602
+ continue ;
603
+ };
604
+ };
605
+ var elements = function (s) {
606
+ return elements_aux(/* [] */0, s);
607
+ };
608
+ var find = function (x, _param) {
609
+ while(true) {
610
+ var param = _param;
611
+ if (param) {
612
+ var v = param.v;
613
+ var c = Curry._2(funarg.compare, x, v);
614
+ if (c === 0) {
615
+ return v;
616
+ }
617
+ _param = c < 0 ? param.l : param.r;
618
+ continue ;
619
+ }
620
+ throw {
621
+ RE_EXN_ID: "Not_found",
622
+ Error: new Error()
623
+ };
624
+ };
625
+ };
626
+ var find_first = function (f, _param) {
627
+ while(true) {
628
+ var param = _param;
629
+ if (param) {
630
+ var v = param.v;
631
+ if (Curry._1(f, v)) {
632
+ var _v0 = v;
633
+ var _param$1 = param.l;
634
+ while(true) {
635
+ var param$1 = _param$1;
636
+ var v0 = _v0;
637
+ if (!param$1) {
638
+ return v0;
639
+ }
640
+ var v$1 = param$1.v;
641
+ if (Curry._1(f, v$1)) {
642
+ _param$1 = param$1.l;
643
+ _v0 = v$1;
644
+ continue ;
645
+ }
646
+ _param$1 = param$1.r;
647
+ continue ;
648
+ };
649
+ }
650
+ _param = param.r;
651
+ continue ;
652
+ }
653
+ throw {
654
+ RE_EXN_ID: "Not_found",
655
+ Error: new Error()
656
+ };
657
+ };
658
+ };
659
+ var find_first_opt = function (f, _param) {
660
+ while(true) {
661
+ var param = _param;
662
+ if (!param) {
663
+ return ;
664
+ }
665
+ var v = param.v;
666
+ if (Curry._1(f, v)) {
667
+ var _v0 = v;
668
+ var _param$1 = param.l;
669
+ while(true) {
670
+ var param$1 = _param$1;
671
+ var v0 = _v0;
672
+ if (!param$1) {
673
+ return Caml_option.some(v0);
674
+ }
675
+ var v$1 = param$1.v;
676
+ if (Curry._1(f, v$1)) {
677
+ _param$1 = param$1.l;
678
+ _v0 = v$1;
679
+ continue ;
680
+ }
681
+ _param$1 = param$1.r;
682
+ continue ;
683
+ };
684
+ }
685
+ _param = param.r;
686
+ continue ;
687
+ };
688
+ };
689
+ var find_last = function (f, _param) {
690
+ while(true) {
691
+ var param = _param;
692
+ if (param) {
693
+ var v = param.v;
694
+ if (Curry._1(f, v)) {
695
+ var _v0 = v;
696
+ var _param$1 = param.r;
697
+ while(true) {
698
+ var param$1 = _param$1;
699
+ var v0 = _v0;
700
+ if (!param$1) {
701
+ return v0;
702
+ }
703
+ var v$1 = param$1.v;
704
+ if (Curry._1(f, v$1)) {
705
+ _param$1 = param$1.r;
706
+ _v0 = v$1;
707
+ continue ;
708
+ }
709
+ _param$1 = param$1.l;
710
+ continue ;
711
+ };
712
+ }
713
+ _param = param.l;
714
+ continue ;
715
+ }
716
+ throw {
717
+ RE_EXN_ID: "Not_found",
718
+ Error: new Error()
719
+ };
720
+ };
721
+ };
722
+ var find_last_opt = function (f, _param) {
723
+ while(true) {
724
+ var param = _param;
725
+ if (!param) {
726
+ return ;
727
+ }
728
+ var v = param.v;
729
+ if (Curry._1(f, v)) {
730
+ var _v0 = v;
731
+ var _param$1 = param.r;
732
+ while(true) {
733
+ var param$1 = _param$1;
734
+ var v0 = _v0;
735
+ if (!param$1) {
736
+ return Caml_option.some(v0);
737
+ }
738
+ var v$1 = param$1.v;
739
+ if (Curry._1(f, v$1)) {
740
+ _param$1 = param$1.r;
741
+ _v0 = v$1;
742
+ continue ;
743
+ }
744
+ _param$1 = param$1.l;
745
+ continue ;
746
+ };
747
+ }
748
+ _param = param.l;
749
+ continue ;
750
+ };
751
+ };
752
+ var find_opt = function (x, _param) {
753
+ while(true) {
754
+ var param = _param;
755
+ if (!param) {
756
+ return ;
757
+ }
758
+ var v = param.v;
759
+ var c = Curry._2(funarg.compare, x, v);
760
+ if (c === 0) {
761
+ return Caml_option.some(v);
762
+ }
763
+ _param = c < 0 ? param.l : param.r;
764
+ continue ;
765
+ };
766
+ };
767
+ var map = function (f, t) {
768
+ if (!t) {
769
+ return /* Empty */0;
770
+ }
771
+ var r = t.r;
772
+ var v = t.v;
773
+ var l = t.l;
774
+ var l$p = map(f, l);
775
+ var v$p = Curry._1(f, v);
776
+ var r$p = map(f, r);
777
+ if (l === l$p && v === v$p && r === r$p) {
778
+ return t;
779
+ } else if ((l$p === /* Empty */0 || Curry._2(funarg.compare, max_elt(l$p), v$p) < 0) && (r$p === /* Empty */0 || Curry._2(funarg.compare, v$p, min_elt(r$p)) < 0)) {
780
+ return join(l$p, v$p, r$p);
781
+ } else {
782
+ return union(l$p, add(v$p, r$p));
783
+ }
784
+ };
785
+ var of_list = function (l) {
786
+ if (!l) {
787
+ return /* Empty */0;
788
+ }
789
+ var match = l.tl;
790
+ var x0 = l.hd;
791
+ if (!match) {
792
+ return singleton(x0);
793
+ }
794
+ var match$1 = match.tl;
795
+ var x1 = match.hd;
796
+ if (!match$1) {
797
+ return add(x1, singleton(x0));
798
+ }
799
+ var match$2 = match$1.tl;
800
+ var x2 = match$1.hd;
801
+ if (!match$2) {
802
+ return add(x2, add(x1, singleton(x0)));
803
+ }
804
+ var match$3 = match$2.tl;
805
+ var x3 = match$2.hd;
806
+ if (match$3) {
807
+ if (match$3.tl) {
808
+ var l$1 = List.sort_uniq(funarg.compare, l);
809
+ var sub = function (n, l) {
810
+ switch (n) {
811
+ case 0 :
812
+ return [
813
+ /* Empty */0,
814
+ l
815
+ ];
816
+ case 1 :
817
+ if (l) {
818
+ return [
819
+ /* Node */{
820
+ l: /* Empty */0,
821
+ v: l.hd,
822
+ r: /* Empty */0,
823
+ h: 1
824
+ },
825
+ l.tl
826
+ ];
827
+ }
828
+ break;
829
+ case 2 :
830
+ if (l) {
831
+ var match = l.tl;
832
+ if (match) {
833
+ return [
834
+ /* Node */{
835
+ l: /* Node */{
836
+ l: /* Empty */0,
837
+ v: l.hd,
838
+ r: /* Empty */0,
839
+ h: 1
840
+ },
841
+ v: match.hd,
842
+ r: /* Empty */0,
843
+ h: 2
844
+ },
845
+ match.tl
846
+ ];
847
+ }
848
+
849
+ }
850
+ break;
851
+ case 3 :
852
+ if (l) {
853
+ var match$1 = l.tl;
854
+ if (match$1) {
855
+ var match$2 = match$1.tl;
856
+ if (match$2) {
857
+ return [
858
+ /* Node */{
859
+ l: /* Node */{
860
+ l: /* Empty */0,
861
+ v: l.hd,
862
+ r: /* Empty */0,
863
+ h: 1
864
+ },
865
+ v: match$1.hd,
866
+ r: /* Node */{
867
+ l: /* Empty */0,
868
+ v: match$2.hd,
869
+ r: /* Empty */0,
870
+ h: 1
871
+ },
872
+ h: 2
873
+ },
874
+ match$2.tl
875
+ ];
876
+ }
877
+
878
+ }
879
+
880
+ }
881
+ break;
882
+ default:
883
+
884
+ }
885
+ var nl = n / 2 | 0;
886
+ var match$3 = sub(nl, l);
887
+ var l$1 = match$3[1];
888
+ if (l$1) {
889
+ var match$4 = sub((n - nl | 0) - 1 | 0, l$1.tl);
890
+ return [
891
+ create(match$3[0], l$1.hd, match$4[0]),
892
+ match$4[1]
893
+ ];
894
+ }
895
+ throw {
896
+ RE_EXN_ID: "Assert_failure",
897
+ _1: [
898
+ "set.ml",
899
+ 510,
900
+ 18
901
+ ],
902
+ Error: new Error()
903
+ };
904
+ };
905
+ return sub(List.length(l$1), l$1)[0];
906
+ } else {
907
+ return add(match$3.hd, add(x3, add(x2, add(x1, singleton(x0)))));
908
+ }
909
+ } else {
910
+ return add(x3, add(x2, add(x1, singleton(x0))));
911
+ }
912
+ };
913
+ return {
914
+ empty: /* Empty */0,
915
+ is_empty: is_empty,
916
+ mem: mem,
917
+ add: add,
918
+ singleton: singleton,
919
+ remove: remove,
920
+ union: union,
921
+ inter: inter,
922
+ diff: diff,
923
+ compare: compare,
924
+ equal: equal,
925
+ subset: subset,
926
+ iter: iter,
927
+ map: map,
928
+ fold: fold,
929
+ for_all: for_all,
930
+ exists: exists,
931
+ filter: filter,
932
+ partition: partition,
933
+ cardinal: cardinal,
934
+ elements: elements,
935
+ min_elt: min_elt,
936
+ min_elt_opt: min_elt_opt,
937
+ max_elt: max_elt,
938
+ max_elt_opt: max_elt_opt,
939
+ choose: min_elt,
940
+ choose_opt: min_elt_opt,
941
+ split: split,
942
+ find: find,
943
+ find_opt: find_opt,
944
+ find_first: find_first,
945
+ find_first_opt: find_first_opt,
946
+ find_last: find_last,
947
+ find_last_opt: find_last_opt,
948
+ of_list: of_list
949
+ };
950
+ }
951
+
952
+ exports.Make = Make;
953
+ /* No side effect */