@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.
- package/CHANGELOG.md +1717 -0
- package/COPYING +674 -0
- package/COPYING.LESSER +165 -0
- package/CREDITS.md +59 -0
- package/LICENSE +24 -0
- package/README.md +114 -0
- package/bsc +22 -0
- package/bsrefmt +16 -0
- package/darwin/bsb_helper.exe +0 -0
- package/darwin/bsc.exe +0 -0
- package/darwin/ninja.COPYING +202 -0
- package/darwin/ninja.exe +0 -0
- package/darwin/refmt.exe +0 -0
- package/darwin/rescript.exe +0 -0
- package/darwinarm64/bsb_helper.exe +0 -0
- package/darwinarm64/bsc.exe +0 -0
- package/darwinarm64/ninja.COPYING +202 -0
- package/darwinarm64/ninja.exe +0 -0
- package/darwinarm64/refmt.exe +0 -0
- package/darwinarm64/rescript.exe +0 -0
- package/docs/docson/build-schema.json +557 -0
- package/freebsd/ninja.COPYING +202 -0
- package/jscomp/stubs/ext_basic_hash_stubs.c +216 -0
- package/lib/4.06.1/bsb_helper.ml +2436 -0
- package/lib/4.06.1/bsb_helper.mli +0 -0
- package/lib/4.06.1/refmt_main3.ml +115517 -0
- package/lib/4.06.1/refmt_main3.mli +1 -0
- package/lib/4.06.1/rescript.ml +15500 -0
- package/lib/4.06.1/rescript.mli +0 -0
- package/lib/4.06.1/whole_compiler.ml +306395 -0
- package/lib/4.06.1/whole_compiler.mli +0 -0
- package/lib/bstracing +270 -0
- package/lib/es6/arg.js +717 -0
- package/lib/es6/array.js +511 -0
- package/lib/es6/arrayLabels.js +511 -0
- package/lib/es6/belt.js +57 -0
- package/lib/es6/belt_Array.js +764 -0
- package/lib/es6/belt_Float.js +16 -0
- package/lib/es6/belt_HashMap.js +280 -0
- package/lib/es6/belt_HashMapInt.js +264 -0
- package/lib/es6/belt_HashMapString.js +264 -0
- package/lib/es6/belt_HashSet.js +222 -0
- package/lib/es6/belt_HashSetInt.js +207 -0
- package/lib/es6/belt_HashSetString.js +207 -0
- package/lib/es6/belt_Id.js +71 -0
- package/lib/es6/belt_Int.js +16 -0
- package/lib/es6/belt_List.js +1512 -0
- package/lib/es6/belt_Map.js +376 -0
- package/lib/es6/belt_MapDict.js +417 -0
- package/lib/es6/belt_MapInt.js +307 -0
- package/lib/es6/belt_MapString.js +307 -0
- package/lib/es6/belt_MutableMap.js +395 -0
- package/lib/es6/belt_MutableMapInt.js +362 -0
- package/lib/es6/belt_MutableMapString.js +362 -0
- package/lib/es6/belt_MutableQueue.js +299 -0
- package/lib/es6/belt_MutableSet.js +538 -0
- package/lib/es6/belt_MutableSetInt.js +501 -0
- package/lib/es6/belt_MutableSetString.js +501 -0
- package/lib/es6/belt_MutableStack.js +137 -0
- package/lib/es6/belt_Option.js +151 -0
- package/lib/es6/belt_Range.js +109 -0
- package/lib/es6/belt_Result.js +136 -0
- package/lib/es6/belt_Set.js +314 -0
- package/lib/es6/belt_SetDict.js +362 -0
- package/lib/es6/belt_SetInt.js +359 -0
- package/lib/es6/belt_SetString.js +359 -0
- package/lib/es6/belt_SortArray.js +427 -0
- package/lib/es6/belt_SortArrayInt.js +374 -0
- package/lib/es6/belt_SortArrayString.js +374 -0
- package/lib/es6/belt_internalAVLset.js +940 -0
- package/lib/es6/belt_internalAVLtree.js +1146 -0
- package/lib/es6/belt_internalBuckets.js +287 -0
- package/lib/es6/belt_internalBucketsType.js +49 -0
- package/lib/es6/belt_internalMapInt.js +365 -0
- package/lib/es6/belt_internalMapString.js +365 -0
- package/lib/es6/belt_internalSetBuckets.js +191 -0
- package/lib/es6/belt_internalSetInt.js +209 -0
- package/lib/es6/belt_internalSetString.js +209 -0
- package/lib/es6/buffer.js +477 -0
- package/lib/es6/bytes.js +704 -0
- package/lib/es6/bytesLabels.js +704 -0
- package/lib/es6/callback.js +16 -0
- package/lib/es6/caml.js +196 -0
- package/lib/es6/caml_array.js +122 -0
- package/lib/es6/caml_array_extern.js +1 -0
- package/lib/es6/caml_bytes.js +122 -0
- package/lib/es6/caml_exceptions.js +31 -0
- package/lib/es6/caml_external_polyfill.js +32 -0
- package/lib/es6/caml_float.js +129 -0
- package/lib/es6/caml_float_extern.js +1 -0
- package/lib/es6/caml_format.js +818 -0
- package/lib/es6/caml_hash.js +101 -0
- package/lib/es6/caml_hash_primitive.js +51 -0
- package/lib/es6/caml_int32.js +28 -0
- package/lib/es6/caml_int64.js +606 -0
- package/lib/es6/caml_int64_extern.js +1 -0
- package/lib/es6/caml_js_exceptions.js +31 -0
- package/lib/es6/caml_lexer.js +258 -0
- package/lib/es6/caml_md5.js +168 -0
- package/lib/es6/caml_module.js +117 -0
- package/lib/es6/caml_nativeint_extern.js +1 -0
- package/lib/es6/caml_obj.js +413 -0
- package/lib/es6/caml_option.js +86 -0
- package/lib/es6/caml_parser.js +303 -0
- package/lib/es6/caml_splice_call.js +52 -0
- package/lib/es6/caml_string.js +23 -0
- package/lib/es6/caml_string_extern.js +1 -0
- package/lib/es6/caml_sys.js +99 -0
- package/lib/es6/caml_undefined_extern.js +1 -0
- package/lib/es6/camlinternalLazy.js +59 -0
- package/lib/es6/camlinternalMod.js +1 -0
- package/lib/es6/char.js +126 -0
- package/lib/es6/complex.js +176 -0
- package/lib/es6/curry.js +526 -0
- package/lib/es6/digest.js +118 -0
- package/lib/es6/dom.js +12 -0
- package/lib/es6/dom_storage.js +27 -0
- package/lib/es6/dom_storage2.js +1 -0
- package/lib/es6/filename.js +496 -0
- package/lib/es6/genlex.js +666 -0
- package/lib/es6/hashtbl.js +1115 -0
- package/lib/es6/hashtblLabels.js +170 -0
- package/lib/es6/int32.js +75 -0
- package/lib/es6/int64.js +70 -0
- package/lib/es6/js.js +111 -0
- package/lib/es6/js_OO.js +15 -0
- package/lib/es6/js_array.js +223 -0
- package/lib/es6/js_array2.js +1 -0
- package/lib/es6/js_bigint.js +1 -0
- package/lib/es6/js_cast.js +1 -0
- package/lib/es6/js_console.js +1 -0
- package/lib/es6/js_date.js +1 -0
- package/lib/es6/js_dict.js +85 -0
- package/lib/es6/js_exn.js +44 -0
- package/lib/es6/js_float.js +1 -0
- package/lib/es6/js_global.js +1 -0
- package/lib/es6/js_int.js +17 -0
- package/lib/es6/js_json.js +172 -0
- package/lib/es6/js_list.js +333 -0
- package/lib/es6/js_map.js +1 -0
- package/lib/es6/js_mapperRt.js +54 -0
- package/lib/es6/js_math.js +50 -0
- package/lib/es6/js_null.js +49 -0
- package/lib/es6/js_null_undefined.js +35 -0
- package/lib/es6/js_obj.js +1 -0
- package/lib/es6/js_option.js +104 -0
- package/lib/es6/js_promise.js +17 -0
- package/lib/es6/js_re.js +1 -0
- package/lib/es6/js_result.js +1 -0
- package/lib/es6/js_set.js +1 -0
- package/lib/es6/js_string.js +199 -0
- package/lib/es6/js_string2.js +1 -0
- package/lib/es6/js_typed_array.js +1733 -0
- package/lib/es6/js_typed_array2.js +39 -0
- package/lib/es6/js_types.js +77 -0
- package/lib/es6/js_undefined.js +52 -0
- package/lib/es6/js_vector.js +134 -0
- package/lib/es6/js_weakmap.js +1 -0
- package/lib/es6/js_weakset.js +1 -0
- package/lib/es6/jsx.js +1 -0
- package/lib/es6/jsxDOM.js +1 -0
- package/lib/es6/jsxDOMStyle.js +1 -0
- package/lib/es6/jsxEvent.js +59 -0
- package/lib/es6/lazy.js +44 -0
- package/lib/es6/lexing.js +217 -0
- package/lib/es6/list.js +1713 -0
- package/lib/es6/listLabels.js +1713 -0
- package/lib/es6/map.js +936 -0
- package/lib/es6/mapLabels.js +951 -0
- package/lib/es6/moreLabels.js +1931 -0
- package/lib/es6/node.js +39 -0
- package/lib/es6/node_buffer.js +1 -0
- package/lib/es6/node_child_process.js +1 -0
- package/lib/es6/node_fs.js +9 -0
- package/lib/es6/node_module.js +1 -0
- package/lib/es6/node_path.js +1 -0
- package/lib/es6/node_process.js +18 -0
- package/lib/es6/obj.js +11 -0
- package/lib/es6/package.json +1 -0
- package/lib/es6/parsing.js +237 -0
- package/lib/es6/pervasives.js +250 -0
- package/lib/es6/printexc.js +102 -0
- package/lib/es6/queue.js +181 -0
- package/lib/es6/random.js +280 -0
- package/lib/es6/set.js +955 -0
- package/lib/es6/setLabels.js +988 -0
- package/lib/es6/sort.js +168 -0
- package/lib/es6/stack.js +88 -0
- package/lib/es6/stdLabels.js +18 -0
- package/lib/es6/stream.js +496 -0
- package/lib/es6/string.js +337 -0
- package/lib/es6/stringLabels.js +337 -0
- package/lib/es6/sys.js +182 -0
- package/lib/es6/uchar.js +133 -0
- package/lib/js/arg.js +715 -0
- package/lib/js/array.js +509 -0
- package/lib/js/arrayLabels.js +509 -0
- package/lib/js/belt.js +55 -0
- package/lib/js/belt_Array.js +762 -0
- package/lib/js/belt_Float.js +14 -0
- package/lib/js/belt_HashMap.js +278 -0
- package/lib/js/belt_HashMapInt.js +262 -0
- package/lib/js/belt_HashMapString.js +262 -0
- package/lib/js/belt_HashSet.js +220 -0
- package/lib/js/belt_HashSetInt.js +205 -0
- package/lib/js/belt_HashSetString.js +205 -0
- package/lib/js/belt_Id.js +69 -0
- package/lib/js/belt_Int.js +14 -0
- package/lib/js/belt_List.js +1510 -0
- package/lib/js/belt_Map.js +374 -0
- package/lib/js/belt_MapDict.js +415 -0
- package/lib/js/belt_MapInt.js +305 -0
- package/lib/js/belt_MapString.js +305 -0
- package/lib/js/belt_MutableMap.js +393 -0
- package/lib/js/belt_MutableMapInt.js +360 -0
- package/lib/js/belt_MutableMapString.js +360 -0
- package/lib/js/belt_MutableQueue.js +297 -0
- package/lib/js/belt_MutableSet.js +536 -0
- package/lib/js/belt_MutableSetInt.js +499 -0
- package/lib/js/belt_MutableSetString.js +499 -0
- package/lib/js/belt_MutableStack.js +135 -0
- package/lib/js/belt_Option.js +149 -0
- package/lib/js/belt_Range.js +107 -0
- package/lib/js/belt_Result.js +134 -0
- package/lib/js/belt_Set.js +312 -0
- package/lib/js/belt_SetDict.js +360 -0
- package/lib/js/belt_SetInt.js +357 -0
- package/lib/js/belt_SetString.js +357 -0
- package/lib/js/belt_SortArray.js +425 -0
- package/lib/js/belt_SortArrayInt.js +372 -0
- package/lib/js/belt_SortArrayString.js +372 -0
- package/lib/js/belt_internalAVLset.js +938 -0
- package/lib/js/belt_internalAVLtree.js +1144 -0
- package/lib/js/belt_internalBuckets.js +285 -0
- package/lib/js/belt_internalBucketsType.js +47 -0
- package/lib/js/belt_internalMapInt.js +363 -0
- package/lib/js/belt_internalMapString.js +363 -0
- package/lib/js/belt_internalSetBuckets.js +189 -0
- package/lib/js/belt_internalSetInt.js +207 -0
- package/lib/js/belt_internalSetString.js +207 -0
- package/lib/js/buffer.js +475 -0
- package/lib/js/bytes.js +702 -0
- package/lib/js/bytesLabels.js +702 -0
- package/lib/js/callback.js +14 -0
- package/lib/js/caml.js +194 -0
- package/lib/js/caml_array.js +120 -0
- package/lib/js/caml_array_extern.js +1 -0
- package/lib/js/caml_bytes.js +120 -0
- package/lib/js/caml_exceptions.js +29 -0
- package/lib/js/caml_external_polyfill.js +30 -0
- package/lib/js/caml_float.js +127 -0
- package/lib/js/caml_float_extern.js +1 -0
- package/lib/js/caml_format.js +816 -0
- package/lib/js/caml_hash.js +99 -0
- package/lib/js/caml_hash_primitive.js +49 -0
- package/lib/js/caml_int32.js +26 -0
- package/lib/js/caml_int64.js +604 -0
- package/lib/js/caml_int64_extern.js +1 -0
- package/lib/js/caml_js_exceptions.js +29 -0
- package/lib/js/caml_lexer.js +256 -0
- package/lib/js/caml_md5.js +166 -0
- package/lib/js/caml_module.js +115 -0
- package/lib/js/caml_nativeint_extern.js +1 -0
- package/lib/js/caml_obj.js +411 -0
- package/lib/js/caml_option.js +84 -0
- package/lib/js/caml_parser.js +301 -0
- package/lib/js/caml_splice_call.js +50 -0
- package/lib/js/caml_string.js +21 -0
- package/lib/js/caml_string_extern.js +1 -0
- package/lib/js/caml_sys.js +97 -0
- package/lib/js/caml_undefined_extern.js +1 -0
- package/lib/js/camlinternalLazy.js +57 -0
- package/lib/js/camlinternalMod.js +1 -0
- package/lib/js/char.js +124 -0
- package/lib/js/complex.js +174 -0
- package/lib/js/curry.js +524 -0
- package/lib/js/digest.js +116 -0
- package/lib/js/dom.js +10 -0
- package/lib/js/dom_storage.js +25 -0
- package/lib/js/dom_storage2.js +1 -0
- package/lib/js/filename.js +494 -0
- package/lib/js/genlex.js +664 -0
- package/lib/js/hashtbl.js +1113 -0
- package/lib/js/hashtblLabels.js +168 -0
- package/lib/js/int32.js +73 -0
- package/lib/js/int64.js +68 -0
- package/lib/js/js.js +109 -0
- package/lib/js/js_OO.js +13 -0
- package/lib/js/js_array.js +221 -0
- package/lib/js/js_array2.js +1 -0
- package/lib/js/js_bigint.js +1 -0
- package/lib/js/js_cast.js +1 -0
- package/lib/js/js_console.js +1 -0
- package/lib/js/js_date.js +1 -0
- package/lib/js/js_dict.js +83 -0
- package/lib/js/js_exn.js +42 -0
- package/lib/js/js_float.js +1 -0
- package/lib/js/js_global.js +1 -0
- package/lib/js/js_int.js +15 -0
- package/lib/js/js_json.js +170 -0
- package/lib/js/js_list.js +331 -0
- package/lib/js/js_map.js +1 -0
- package/lib/js/js_mapperRt.js +52 -0
- package/lib/js/js_math.js +48 -0
- package/lib/js/js_null.js +47 -0
- package/lib/js/js_null_undefined.js +33 -0
- package/lib/js/js_obj.js +1 -0
- package/lib/js/js_option.js +103 -0
- package/lib/js/js_promise.js +15 -0
- package/lib/js/js_re.js +1 -0
- package/lib/js/js_result.js +1 -0
- package/lib/js/js_set.js +1 -0
- package/lib/js/js_string.js +197 -0
- package/lib/js/js_string2.js +1 -0
- package/lib/js/js_typed_array.js +1731 -0
- package/lib/js/js_typed_array2.js +37 -0
- package/lib/js/js_types.js +75 -0
- package/lib/js/js_undefined.js +50 -0
- package/lib/js/js_vector.js +132 -0
- package/lib/js/js_weakmap.js +1 -0
- package/lib/js/js_weakset.js +1 -0
- package/lib/js/jsx.js +1 -0
- package/lib/js/jsxDOM.js +1 -0
- package/lib/js/jsxDOMStyle.js +1 -0
- package/lib/js/jsxEvent.js +57 -0
- package/lib/js/lazy.js +42 -0
- package/lib/js/lexing.js +215 -0
- package/lib/js/list.js +1711 -0
- package/lib/js/listLabels.js +1711 -0
- package/lib/js/map.js +934 -0
- package/lib/js/mapLabels.js +949 -0
- package/lib/js/moreLabels.js +1929 -0
- package/lib/js/node.js +37 -0
- package/lib/js/node_buffer.js +1 -0
- package/lib/js/node_child_process.js +1 -0
- package/lib/js/node_fs.js +7 -0
- package/lib/js/node_module.js +1 -0
- package/lib/js/node_path.js +1 -0
- package/lib/js/node_process.js +16 -0
- package/lib/js/obj.js +9 -0
- package/lib/js/parsing.js +235 -0
- package/lib/js/pervasives.js +248 -0
- package/lib/js/printexc.js +100 -0
- package/lib/js/queue.js +179 -0
- package/lib/js/random.js +278 -0
- package/lib/js/set.js +953 -0
- package/lib/js/setLabels.js +986 -0
- package/lib/js/sort.js +166 -0
- package/lib/js/stack.js +86 -0
- package/lib/js/stdLabels.js +16 -0
- package/lib/js/stream.js +494 -0
- package/lib/js/string.js +335 -0
- package/lib/js/stringLabels.js +335 -0
- package/lib/js/sys.js +180 -0
- package/lib/js/uchar.js +131 -0
- package/lib/minisocket.js +93 -0
- package/lib/ocaml/arg.cmi +0 -0
- package/lib/ocaml/arg.cmt +0 -0
- package/lib/ocaml/arg.cmti +0 -0
- package/lib/ocaml/arg.ml +359 -0
- package/lib/ocaml/arg.mli +185 -0
- package/lib/ocaml/array.cmi +0 -0
- package/lib/ocaml/array.cmt +0 -0
- package/lib/ocaml/array.cmti +0 -0
- package/lib/ocaml/array.ml +307 -0
- package/lib/ocaml/array.mli +275 -0
- package/lib/ocaml/arrayLabels.cmi +0 -0
- package/lib/ocaml/arrayLabels.cmt +0 -0
- package/lib/ocaml/arrayLabels.cmti +0 -0
- package/lib/ocaml/arrayLabels.ml +307 -0
- package/lib/ocaml/arrayLabels.mli +276 -0
- package/lib/ocaml/belt.cmi +0 -0
- package/lib/ocaml/belt.cmt +0 -0
- package/lib/ocaml/belt.ml +352 -0
- package/lib/ocaml/belt_Array.cmi +0 -0
- package/lib/ocaml/belt_Array.cmt +0 -0
- package/lib/ocaml/belt_Array.cmti +0 -0
- package/lib/ocaml/belt_Array.ml +525 -0
- package/lib/ocaml/belt_Array.mli +707 -0
- package/lib/ocaml/belt_Float.cmi +0 -0
- package/lib/ocaml/belt_Float.cmt +0 -0
- package/lib/ocaml/belt_Float.cmti +0 -0
- package/lib/ocaml/belt_Float.ml +50 -0
- package/lib/ocaml/belt_Float.mli +106 -0
- package/lib/ocaml/belt_HashMap.cmi +0 -0
- package/lib/ocaml/belt_HashMap.cmt +0 -0
- package/lib/ocaml/belt_HashMap.cmti +0 -0
- package/lib/ocaml/belt_HashMap.ml +226 -0
- package/lib/ocaml/belt_HashMap.mli +436 -0
- package/lib/ocaml/belt_HashMapInt.cmi +0 -0
- package/lib/ocaml/belt_HashMapInt.cmt +0 -0
- package/lib/ocaml/belt_HashMapInt.cmti +0 -0
- package/lib/ocaml/belt_HashMapInt.ml +206 -0
- package/lib/ocaml/belt_HashMapInt.mli +50 -0
- package/lib/ocaml/belt_HashMapString.cmi +0 -0
- package/lib/ocaml/belt_HashMapString.cmt +0 -0
- package/lib/ocaml/belt_HashMapString.cmti +0 -0
- package/lib/ocaml/belt_HashMapString.ml +206 -0
- package/lib/ocaml/belt_HashMapString.mli +50 -0
- package/lib/ocaml/belt_HashSet.cmi +0 -0
- package/lib/ocaml/belt_HashSet.cmt +0 -0
- package/lib/ocaml/belt_HashSet.cmti +0 -0
- package/lib/ocaml/belt_HashSet.ml +196 -0
- package/lib/ocaml/belt_HashSet.mli +125 -0
- package/lib/ocaml/belt_HashSetInt.cmi +0 -0
- package/lib/ocaml/belt_HashSetInt.cmt +0 -0
- package/lib/ocaml/belt_HashSetInt.cmti +0 -0
- package/lib/ocaml/belt_HashSetInt.ml +155 -0
- package/lib/ocaml/belt_HashSetInt.mli +74 -0
- package/lib/ocaml/belt_HashSetString.cmi +0 -0
- package/lib/ocaml/belt_HashSetString.cmt +0 -0
- package/lib/ocaml/belt_HashSetString.cmti +0 -0
- package/lib/ocaml/belt_HashSetString.ml +156 -0
- package/lib/ocaml/belt_HashSetString.mli +74 -0
- package/lib/ocaml/belt_Id.cmi +0 -0
- package/lib/ocaml/belt_Id.cmt +0 -0
- package/lib/ocaml/belt_Id.cmti +0 -0
- package/lib/ocaml/belt_Id.ml +133 -0
- package/lib/ocaml/belt_Id.mli +171 -0
- package/lib/ocaml/belt_Int.cmi +0 -0
- package/lib/ocaml/belt_Int.cmt +0 -0
- package/lib/ocaml/belt_Int.cmti +0 -0
- package/lib/ocaml/belt_Int.ml +50 -0
- package/lib/ocaml/belt_Int.mli +103 -0
- package/lib/ocaml/belt_List.cmi +0 -0
- package/lib/ocaml/belt_List.cmt +0 -0
- package/lib/ocaml/belt_List.cmti +0 -0
- package/lib/ocaml/belt_List.ml +803 -0
- package/lib/ocaml/belt_List.mli +844 -0
- package/lib/ocaml/belt_Map.cmi +0 -0
- package/lib/ocaml/belt_Map.cmt +0 -0
- package/lib/ocaml/belt_Map.cmti +0 -0
- package/lib/ocaml/belt_Map.ml +170 -0
- package/lib/ocaml/belt_Map.mli +496 -0
- package/lib/ocaml/belt_MapDict.cmi +0 -0
- package/lib/ocaml/belt_MapDict.cmt +0 -0
- package/lib/ocaml/belt_MapDict.cmti +0 -0
- package/lib/ocaml/belt_MapDict.ml +278 -0
- package/lib/ocaml/belt_MapDict.mli +268 -0
- package/lib/ocaml/belt_MapInt.cmi +0 -0
- package/lib/ocaml/belt_MapInt.cmt +0 -0
- package/lib/ocaml/belt_MapInt.cmti +0 -0
- package/lib/ocaml/belt_MapInt.ml +169 -0
- package/lib/ocaml/belt_MapInt.mli +187 -0
- package/lib/ocaml/belt_MapString.cmi +0 -0
- package/lib/ocaml/belt_MapString.cmt +0 -0
- package/lib/ocaml/belt_MapString.cmti +0 -0
- package/lib/ocaml/belt_MapString.ml +169 -0
- package/lib/ocaml/belt_MapString.mli +187 -0
- package/lib/ocaml/belt_MutableMap.cmi +0 -0
- package/lib/ocaml/belt_MutableMap.cmt +0 -0
- package/lib/ocaml/belt_MutableMap.cmti +0 -0
- package/lib/ocaml/belt_MutableMap.ml +241 -0
- package/lib/ocaml/belt_MutableMap.mli +145 -0
- package/lib/ocaml/belt_MutableMapInt.cmi +0 -0
- package/lib/ocaml/belt_MutableMapInt.cmt +0 -0
- package/lib/ocaml/belt_MutableMapInt.cmti +0 -0
- package/lib/ocaml/belt_MutableMapInt.ml +172 -0
- package/lib/ocaml/belt_MutableMapInt.mli +135 -0
- package/lib/ocaml/belt_MutableMapString.cmi +0 -0
- package/lib/ocaml/belt_MutableMapString.cmt +0 -0
- package/lib/ocaml/belt_MutableMapString.cmti +0 -0
- package/lib/ocaml/belt_MutableMapString.ml +172 -0
- package/lib/ocaml/belt_MutableMapString.mli +135 -0
- package/lib/ocaml/belt_MutableQueue.cmi +0 -0
- package/lib/ocaml/belt_MutableQueue.cmt +0 -0
- package/lib/ocaml/belt_MutableQueue.cmti +0 -0
- package/lib/ocaml/belt_MutableQueue.ml +222 -0
- package/lib/ocaml/belt_MutableQueue.mli +116 -0
- package/lib/ocaml/belt_MutableSet.cmi +0 -0
- package/lib/ocaml/belt_MutableSet.cmt +0 -0
- package/lib/ocaml/belt_MutableSet.cmti +0 -0
- package/lib/ocaml/belt_MutableSet.ml +371 -0
- package/lib/ocaml/belt_MutableSet.mli +617 -0
- package/lib/ocaml/belt_MutableSetInt.cmi +0 -0
- package/lib/ocaml/belt_MutableSetInt.cmt +0 -0
- package/lib/ocaml/belt_MutableSetInt.cmti +0 -0
- package/lib/ocaml/belt_MutableSetInt.ml +342 -0
- package/lib/ocaml/belt_MutableSetInt.mli +124 -0
- package/lib/ocaml/belt_MutableSetString.cmi +0 -0
- package/lib/ocaml/belt_MutableSetString.cmt +0 -0
- package/lib/ocaml/belt_MutableSetString.cmti +0 -0
- package/lib/ocaml/belt_MutableSetString.ml +342 -0
- package/lib/ocaml/belt_MutableSetString.mli +124 -0
- package/lib/ocaml/belt_MutableStack.cmi +0 -0
- package/lib/ocaml/belt_MutableStack.cmt +0 -0
- package/lib/ocaml/belt_MutableStack.cmti +0 -0
- package/lib/ocaml/belt_MutableStack.ml +106 -0
- package/lib/ocaml/belt_MutableStack.mli +63 -0
- package/lib/ocaml/belt_Option.cmi +0 -0
- package/lib/ocaml/belt_Option.cmt +0 -0
- package/lib/ocaml/belt_Option.cmti +0 -0
- package/lib/ocaml/belt_Option.ml +93 -0
- package/lib/ocaml/belt_Option.mli +270 -0
- package/lib/ocaml/belt_Range.cmi +0 -0
- package/lib/ocaml/belt_Range.cmt +0 -0
- package/lib/ocaml/belt_Range.cmti +0 -0
- package/lib/ocaml/belt_Range.ml +76 -0
- package/lib/ocaml/belt_Range.mli +114 -0
- package/lib/ocaml/belt_Result.cmi +0 -0
- package/lib/ocaml/belt_Result.cmt +0 -0
- package/lib/ocaml/belt_Result.cmti +0 -0
- package/lib/ocaml/belt_Result.ml +75 -0
- package/lib/ocaml/belt_Result.mli +205 -0
- package/lib/ocaml/belt_Set.cmi +0 -0
- package/lib/ocaml/belt_Set.cmt +0 -0
- package/lib/ocaml/belt_Set.cmti +0 -0
- package/lib/ocaml/belt_Set.cppo.ml +205 -0
- package/lib/ocaml/belt_Set.cppo.mli +153 -0
- package/lib/ocaml/belt_Set.ml +164 -0
- package/lib/ocaml/belt_Set.mli +523 -0
- package/lib/ocaml/belt_SetDict.cmi +0 -0
- package/lib/ocaml/belt_SetDict.cmt +0 -0
- package/lib/ocaml/belt_SetDict.cmti +0 -0
- package/lib/ocaml/belt_SetDict.ml +237 -0
- package/lib/ocaml/belt_SetDict.mli +567 -0
- package/lib/ocaml/belt_SetInt.cmi +0 -0
- package/lib/ocaml/belt_SetInt.cmt +0 -0
- package/lib/ocaml/belt_SetInt.cmti +0 -0
- package/lib/ocaml/belt_SetInt.ml +201 -0
- package/lib/ocaml/belt_SetInt.mli +151 -0
- package/lib/ocaml/belt_SetString.cmi +0 -0
- package/lib/ocaml/belt_SetString.cmt +0 -0
- package/lib/ocaml/belt_SetString.cmti +0 -0
- package/lib/ocaml/belt_SetString.ml +201 -0
- package/lib/ocaml/belt_SetString.mli +151 -0
- package/lib/ocaml/belt_SortArray.cmi +0 -0
- package/lib/ocaml/belt_SortArray.cmt +0 -0
- package/lib/ocaml/belt_SortArray.cmti +0 -0
- package/lib/ocaml/belt_SortArray.ml +322 -0
- package/lib/ocaml/belt_SortArray.mli +146 -0
- package/lib/ocaml/belt_SortArrayInt.cmi +0 -0
- package/lib/ocaml/belt_SortArrayInt.cmt +0 -0
- package/lib/ocaml/belt_SortArrayInt.cmti +0 -0
- package/lib/ocaml/belt_SortArrayInt.ml +263 -0
- package/lib/ocaml/belt_SortArrayInt.mli +93 -0
- package/lib/ocaml/belt_SortArrayString.cmi +0 -0
- package/lib/ocaml/belt_SortArrayString.cmt +0 -0
- package/lib/ocaml/belt_SortArrayString.cmti +0 -0
- package/lib/ocaml/belt_SortArrayString.ml +263 -0
- package/lib/ocaml/belt_SortArrayString.mli +93 -0
- package/lib/ocaml/belt_internalAVLset.cmt +0 -0
- package/lib/ocaml/belt_internalAVLset.cmti +0 -0
- package/lib/ocaml/belt_internalAVLset.ml +665 -0
- package/lib/ocaml/belt_internalAVLset.mli +124 -0
- package/lib/ocaml/belt_internalAVLtree.cmt +0 -0
- package/lib/ocaml/belt_internalAVLtree.cmti +0 -0
- package/lib/ocaml/belt_internalAVLtree.ml +762 -0
- package/lib/ocaml/belt_internalAVLtree.mli +215 -0
- package/lib/ocaml/belt_internalBuckets.cmt +0 -0
- package/lib/ocaml/belt_internalBuckets.cmti +0 -0
- package/lib/ocaml/belt_internalBuckets.ml +218 -0
- package/lib/ocaml/belt_internalBuckets.mli +57 -0
- package/lib/ocaml/belt_internalBucketsType.cmt +0 -0
- package/lib/ocaml/belt_internalBucketsType.cmti +0 -0
- package/lib/ocaml/belt_internalBucketsType.ml +59 -0
- package/lib/ocaml/belt_internalBucketsType.mli +46 -0
- package/lib/ocaml/belt_internalMapInt.cmt +0 -0
- package/lib/ocaml/belt_internalMapInt.ml +227 -0
- package/lib/ocaml/belt_internalMapString.cmt +0 -0
- package/lib/ocaml/belt_internalMapString.ml +227 -0
- package/lib/ocaml/belt_internalSetBuckets.cmt +0 -0
- package/lib/ocaml/belt_internalSetBuckets.cmti +0 -0
- package/lib/ocaml/belt_internalSetBuckets.ml +157 -0
- package/lib/ocaml/belt_internalSetBuckets.mli +47 -0
- package/lib/ocaml/belt_internalSetInt.cmt +0 -0
- package/lib/ocaml/belt_internalSetInt.ml +129 -0
- package/lib/ocaml/belt_internalSetString.cmt +0 -0
- package/lib/ocaml/belt_internalSetString.ml +129 -0
- package/lib/ocaml/belt_internals.cmti +0 -0
- package/lib/ocaml/belt_internals.mli +79 -0
- package/lib/ocaml/buffer.cmi +0 -0
- package/lib/ocaml/buffer.cmt +0 -0
- package/lib/ocaml/buffer.cmti +0 -0
- package/lib/ocaml/buffer.ml +250 -0
- package/lib/ocaml/buffer.mli +149 -0
- package/lib/ocaml/bytes.cmi +0 -0
- package/lib/ocaml/bytes.cmt +0 -0
- package/lib/ocaml/bytes.cmti +0 -0
- package/lib/ocaml/bytes.ml +431 -0
- package/lib/ocaml/bytes.mli +430 -0
- package/lib/ocaml/bytesLabels.cmi +0 -0
- package/lib/ocaml/bytesLabels.cmt +0 -0
- package/lib/ocaml/bytesLabels.cmti +0 -0
- package/lib/ocaml/bytesLabels.ml +428 -0
- package/lib/ocaml/bytesLabels.mli +276 -0
- package/lib/ocaml/callback.cmi +0 -0
- package/lib/ocaml/callback.cmt +0 -0
- package/lib/ocaml/callback.cmti +0 -0
- package/lib/ocaml/callback.ml +20 -0
- package/lib/ocaml/callback.mli +34 -0
- package/lib/ocaml/camlinternalLazy.cmi +0 -0
- package/lib/ocaml/camlinternalLazy.cmt +0 -0
- package/lib/ocaml/camlinternalLazy.cmti +0 -0
- package/lib/ocaml/camlinternalLazy.ml +89 -0
- package/lib/ocaml/camlinternalLazy.mli +27 -0
- package/lib/ocaml/camlinternalMod.cmi +0 -0
- package/lib/ocaml/camlinternalMod.cmt +0 -0
- package/lib/ocaml/camlinternalMod.cmti +0 -0
- package/lib/ocaml/camlinternalMod.ml +21 -0
- package/lib/ocaml/camlinternalMod.mli +25 -0
- package/lib/ocaml/char.cmi +0 -0
- package/lib/ocaml/char.cmt +0 -0
- package/lib/ocaml/char.cmti +0 -0
- package/lib/ocaml/char.ml +76 -0
- package/lib/ocaml/char.mli +72 -0
- package/lib/ocaml/complex.cmi +0 -0
- package/lib/ocaml/complex.cmt +0 -0
- package/lib/ocaml/complex.cmti +0 -0
- package/lib/ocaml/complex.ml +87 -0
- package/lib/ocaml/complex.mli +86 -0
- package/lib/ocaml/digest.cmi +0 -0
- package/lib/ocaml/digest.cmt +0 -0
- package/lib/ocaml/digest.cmti +0 -0
- package/lib/ocaml/digest.ml +66 -0
- package/lib/ocaml/digest.mli +68 -0
- package/lib/ocaml/dom.cmi +0 -0
- package/lib/ocaml/dom.cmt +0 -0
- package/lib/ocaml/dom.ml +296 -0
- package/lib/ocaml/dom_storage.cmi +0 -0
- package/lib/ocaml/dom_storage.cmt +0 -0
- package/lib/ocaml/dom_storage.ml +22 -0
- package/lib/ocaml/dom_storage2.cmi +0 -0
- package/lib/ocaml/dom_storage2.cmt +0 -0
- package/lib/ocaml/dom_storage2.ml +11 -0
- package/lib/ocaml/filename.cmi +0 -0
- package/lib/ocaml/filename.cmt +0 -0
- package/lib/ocaml/filename.cmti +0 -0
- package/lib/ocaml/filename.ml +233 -0
- package/lib/ocaml/filename.mli +134 -0
- package/lib/ocaml/genlex.cmi +0 -0
- package/lib/ocaml/genlex.cmt +0 -0
- package/lib/ocaml/genlex.cmti +0 -0
- package/lib/ocaml/genlex.ml +201 -0
- package/lib/ocaml/genlex.mli +73 -0
- package/lib/ocaml/hashmap.cppo.ml +214 -0
- package/lib/ocaml/hashmap.cppo.mli +54 -0
- package/lib/ocaml/hashset.cppo.ml +165 -0
- package/lib/ocaml/hashset.cppo.mli +77 -0
- package/lib/ocaml/hashtbl.cmi +0 -0
- package/lib/ocaml/hashtbl.cmt +0 -0
- package/lib/ocaml/hashtbl.cmti +0 -0
- package/lib/ocaml/hashtbl.ml +541 -0
- package/lib/ocaml/hashtbl.mli +411 -0
- package/lib/ocaml/hashtblLabels.cmi +0 -0
- package/lib/ocaml/hashtblLabels.cmt +0 -0
- package/lib/ocaml/hashtblLabels.ml +130 -0
- package/lib/ocaml/int32.cmi +0 -0
- package/lib/ocaml/int32.cmt +0 -0
- package/lib/ocaml/int32.cmti +0 -0
- package/lib/ocaml/int32.ml +64 -0
- package/lib/ocaml/int32.mli +186 -0
- package/lib/ocaml/int64.cmi +0 -0
- package/lib/ocaml/int64.cmt +0 -0
- package/lib/ocaml/int64.cmti +0 -0
- package/lib/ocaml/int64.ml +72 -0
- package/lib/ocaml/int64.mli +197 -0
- package/lib/ocaml/internal_map.cppo.ml +230 -0
- package/lib/ocaml/internal_set.cppo.ml +134 -0
- package/lib/ocaml/js.cmi +0 -0
- package/lib/ocaml/js.cmt +0 -0
- package/lib/ocaml/js.ml +313 -0
- package/lib/ocaml/js_OO.cmi +0 -0
- package/lib/ocaml/js_OO.cmt +0 -0
- package/lib/ocaml/js_OO.ml +180 -0
- package/lib/ocaml/js_array.cmi +0 -0
- package/lib/ocaml/js_array.cmt +0 -0
- package/lib/ocaml/js_array.ml +970 -0
- package/lib/ocaml/js_array2.cmi +0 -0
- package/lib/ocaml/js_array2.cmt +0 -0
- package/lib/ocaml/js_array2.ml +1065 -0
- package/lib/ocaml/js_bigint.cmi +0 -0
- package/lib/ocaml/js_bigint.cmt +0 -0
- package/lib/ocaml/js_bigint.ml +3 -0
- package/lib/ocaml/js_cast.cmi +0 -0
- package/lib/ocaml/js_cast.cmt +0 -0
- package/lib/ocaml/js_cast.cmti +0 -0
- package/lib/ocaml/js_cast.ml +29 -0
- package/lib/ocaml/js_cast.mli +45 -0
- package/lib/ocaml/js_console.cmi +0 -0
- package/lib/ocaml/js_console.cmt +0 -0
- package/lib/ocaml/js_console.ml +51 -0
- package/lib/ocaml/js_date.cmi +0 -0
- package/lib/ocaml/js_date.cmt +0 -0
- package/lib/ocaml/js_date.ml +1263 -0
- package/lib/ocaml/js_dict.cmi +0 -0
- package/lib/ocaml/js_dict.cmt +0 -0
- package/lib/ocaml/js_dict.cmti +0 -0
- package/lib/ocaml/js_dict.ml +114 -0
- package/lib/ocaml/js_dict.mli +152 -0
- package/lib/ocaml/js_exn.cmi +0 -0
- package/lib/ocaml/js_exn.cmt +0 -0
- package/lib/ocaml/js_exn.cmti +0 -0
- package/lib/ocaml/js_exn.ml +102 -0
- package/lib/ocaml/js_exn.mli +79 -0
- package/lib/ocaml/js_float.cmi +0 -0
- package/lib/ocaml/js_float.cmt +0 -0
- package/lib/ocaml/js_float.ml +294 -0
- package/lib/ocaml/js_global.cmi +0 -0
- package/lib/ocaml/js_global.cmt +0 -0
- package/lib/ocaml/js_global.ml +185 -0
- package/lib/ocaml/js_int.cmi +0 -0
- package/lib/ocaml/js_int.cmt +0 -0
- package/lib/ocaml/js_int.ml +158 -0
- package/lib/ocaml/js_json.cmi +0 -0
- package/lib/ocaml/js_json.cmt +0 -0
- package/lib/ocaml/js_json.cmti +0 -0
- package/lib/ocaml/js_json.ml +195 -0
- package/lib/ocaml/js_json.mli +244 -0
- package/lib/ocaml/js_list.cmi +0 -0
- package/lib/ocaml/js_list.cmt +0 -0
- package/lib/ocaml/js_list.cmti +0 -0
- package/lib/ocaml/js_list.ml +174 -0
- package/lib/ocaml/js_list.mli +72 -0
- package/lib/ocaml/js_map.cmi +0 -0
- package/lib/ocaml/js_map.cmt +0 -0
- package/lib/ocaml/js_map.ml +3 -0
- package/lib/ocaml/js_mapperRt.cmi +0 -0
- package/lib/ocaml/js_mapperRt.cmt +0 -0
- package/lib/ocaml/js_mapperRt.cmti +0 -0
- package/lib/ocaml/js_mapperRt.ml +50 -0
- package/lib/ocaml/js_mapperRt.mli +44 -0
- package/lib/ocaml/js_math.cmi +0 -0
- package/lib/ocaml/js_math.cmt +0 -0
- package/lib/ocaml/js_math.ml +626 -0
- package/lib/ocaml/js_null.cmi +0 -0
- package/lib/ocaml/js_null.cmt +0 -0
- package/lib/ocaml/js_null.cmti +0 -0
- package/lib/ocaml/js_null.ml +57 -0
- package/lib/ocaml/js_null.mli +87 -0
- package/lib/ocaml/js_null_undefined.cmi +0 -0
- package/lib/ocaml/js_null_undefined.cmt +0 -0
- package/lib/ocaml/js_null_undefined.cmti +0 -0
- package/lib/ocaml/js_null_undefined.ml +50 -0
- package/lib/ocaml/js_null_undefined.mli +85 -0
- package/lib/ocaml/js_obj.cmi +0 -0
- package/lib/ocaml/js_obj.cmt +0 -0
- package/lib/ocaml/js_obj.ml +100 -0
- package/lib/ocaml/js_option.cmi +0 -0
- package/lib/ocaml/js_option.cmt +0 -0
- package/lib/ocaml/js_option.cmti +0 -0
- package/lib/ocaml/js_option.ml +203 -0
- package/lib/ocaml/js_option.mli +52 -0
- package/lib/ocaml/js_promise.cmi +0 -0
- package/lib/ocaml/js_promise.cmt +0 -0
- package/lib/ocaml/js_promise.ml +100 -0
- package/lib/ocaml/js_re.cmi +0 -0
- package/lib/ocaml/js_re.cmt +0 -0
- package/lib/ocaml/js_re.ml +184 -0
- package/lib/ocaml/js_result.cmi +0 -0
- package/lib/ocaml/js_result.cmt +0 -0
- package/lib/ocaml/js_result.cmti +0 -0
- package/lib/ocaml/js_result.ml +28 -0
- package/lib/ocaml/js_result.mli +28 -0
- package/lib/ocaml/js_set.cmi +0 -0
- package/lib/ocaml/js_set.cmt +0 -0
- package/lib/ocaml/js_set.ml +3 -0
- package/lib/ocaml/js_string.cmi +0 -0
- package/lib/ocaml/js_string.cmt +0 -0
- package/lib/ocaml/js_string.ml +914 -0
- package/lib/ocaml/js_string2.cmi +0 -0
- package/lib/ocaml/js_string2.cmt +0 -0
- package/lib/ocaml/js_string2.ml +912 -0
- package/lib/ocaml/js_typed_array.cmi +0 -0
- package/lib/ocaml/js_typed_array.cmt +0 -0
- package/lib/ocaml/js_typed_array.cppo.ml +429 -0
- package/lib/ocaml/js_typed_array.ml +1405 -0
- package/lib/ocaml/js_typed_array2.cmi +0 -0
- package/lib/ocaml/js_typed_array2.cmt +0 -0
- package/lib/ocaml/js_typed_array2.cppo.ml +296 -0
- package/lib/ocaml/js_typed_array2.ml +1269 -0
- package/lib/ocaml/js_types.cmi +0 -0
- package/lib/ocaml/js_types.cmt +0 -0
- package/lib/ocaml/js_types.cmti +0 -0
- package/lib/ocaml/js_types.ml +118 -0
- package/lib/ocaml/js_types.mli +78 -0
- package/lib/ocaml/js_undefined.cmi +0 -0
- package/lib/ocaml/js_undefined.cmt +0 -0
- package/lib/ocaml/js_undefined.cmti +0 -0
- package/lib/ocaml/js_undefined.ml +59 -0
- package/lib/ocaml/js_undefined.mli +92 -0
- package/lib/ocaml/js_vector.cmi +0 -0
- package/lib/ocaml/js_vector.cmt +0 -0
- package/lib/ocaml/js_vector.cmti +0 -0
- package/lib/ocaml/js_vector.ml +143 -0
- package/lib/ocaml/js_vector.mli +92 -0
- package/lib/ocaml/js_weakmap.cmi +0 -0
- package/lib/ocaml/js_weakmap.cmt +0 -0
- package/lib/ocaml/js_weakmap.ml +3 -0
- package/lib/ocaml/js_weakset.cmi +0 -0
- package/lib/ocaml/js_weakset.cmt +0 -0
- package/lib/ocaml/js_weakset.ml +3 -0
- package/lib/ocaml/jsx.cmi +0 -0
- package/lib/ocaml/jsx.cmt +0 -0
- package/lib/ocaml/jsx.ml +39 -0
- package/lib/ocaml/jsxDOM.cmi +0 -0
- package/lib/ocaml/jsxDOM.cmt +0 -0
- package/lib/ocaml/jsxDOM.ml +2087 -0
- package/lib/ocaml/jsxDOMStyle.cmi +0 -0
- package/lib/ocaml/jsxDOMStyle.cmt +0 -0
- package/lib/ocaml/jsxDOMStyle.ml +777 -0
- package/lib/ocaml/jsxEvent.cmi +0 -0
- package/lib/ocaml/jsxEvent.cmt +0 -0
- package/lib/ocaml/jsxEvent.ml +358 -0
- package/lib/ocaml/lazy.cmi +0 -0
- package/lib/ocaml/lazy.cmt +0 -0
- package/lib/ocaml/lazy.cmti +0 -0
- package/lib/ocaml/lazy.ml +70 -0
- package/lib/ocaml/lazy.mli +95 -0
- package/lib/ocaml/lexing.cmi +0 -0
- package/lib/ocaml/lexing.cmt +0 -0
- package/lib/ocaml/lexing.cmti +0 -0
- package/lib/ocaml/lexing.ml +230 -0
- package/lib/ocaml/lexing.mli +172 -0
- package/lib/ocaml/list.cmi +0 -0
- package/lib/ocaml/list.cmt +0 -0
- package/lib/ocaml/list.cmti +0 -0
- package/lib/ocaml/list.ml +485 -0
- package/lib/ocaml/list.mli +347 -0
- package/lib/ocaml/listLabels.cmi +0 -0
- package/lib/ocaml/listLabels.cmt +0 -0
- package/lib/ocaml/listLabels.cmti +0 -0
- package/lib/ocaml/listLabels.ml +485 -0
- package/lib/ocaml/listLabels.mli +353 -0
- package/lib/ocaml/map.cmi +0 -0
- package/lib/ocaml/map.cmt +0 -0
- package/lib/ocaml/map.cmti +0 -0
- package/lib/ocaml/map.cppo.ml +174 -0
- package/lib/ocaml/map.cppo.mli +191 -0
- package/lib/ocaml/map.ml +480 -0
- package/lib/ocaml/map.mli +315 -0
- package/lib/ocaml/mapLabels.cmi +0 -0
- package/lib/ocaml/mapLabels.cmt +0 -0
- package/lib/ocaml/mapLabels.ml +480 -0
- package/lib/ocaml/mapm.cppo.ml +177 -0
- package/lib/ocaml/mapm.cppo.mli +138 -0
- package/lib/ocaml/moreLabels.cmi +0 -0
- package/lib/ocaml/moreLabels.cmt +0 -0
- package/lib/ocaml/moreLabels.cmti +0 -0
- package/lib/ocaml/moreLabels.ml +22 -0
- package/lib/ocaml/moreLabels.mli +198 -0
- package/lib/ocaml/node.cmi +0 -0
- package/lib/ocaml/node.cmt +0 -0
- package/lib/ocaml/node.ml +84 -0
- package/lib/ocaml/node_buffer.cmi +0 -0
- package/lib/ocaml/node_buffer.cmt +0 -0
- package/lib/ocaml/node_buffer.ml +47 -0
- package/lib/ocaml/node_child_process.cmi +0 -0
- package/lib/ocaml/node_child_process.cmt +0 -0
- package/lib/ocaml/node_child_process.ml +50 -0
- package/lib/ocaml/node_fs.cmi +0 -0
- package/lib/ocaml/node_fs.cmt +0 -0
- package/lib/ocaml/node_fs.ml +153 -0
- package/lib/ocaml/node_module.cmi +0 -0
- package/lib/ocaml/node_module.cmt +0 -0
- package/lib/ocaml/node_module.ml +29 -0
- package/lib/ocaml/node_path.cmi +0 -0
- package/lib/ocaml/node_path.cmt +0 -0
- package/lib/ocaml/node_path.ml +71 -0
- package/lib/ocaml/node_process.cmi +0 -0
- package/lib/ocaml/node_process.cmt +0 -0
- package/lib/ocaml/node_process.cmti +0 -0
- package/lib/ocaml/node_process.ml +59 -0
- package/lib/ocaml/node_process.mli +48 -0
- package/lib/ocaml/obj.cmi +0 -0
- package/lib/ocaml/obj.cmt +0 -0
- package/lib/ocaml/obj.cmti +0 -0
- package/lib/ocaml/obj.ml +29 -0
- package/lib/ocaml/obj.mli +62 -0
- package/lib/ocaml/parsing.cmi +0 -0
- package/lib/ocaml/parsing.cmt +0 -0
- package/lib/ocaml/parsing.cmti +0 -0
- package/lib/ocaml/parsing.ml +212 -0
- package/lib/ocaml/parsing.mli +105 -0
- package/lib/ocaml/pervasives.cmi +0 -0
- package/lib/ocaml/pervasives.cmt +0 -0
- package/lib/ocaml/pervasives.cmti +0 -0
- package/lib/ocaml/pervasives.ml +297 -0
- package/lib/ocaml/pervasives.mli +771 -0
- package/lib/ocaml/printexc.cmi +0 -0
- package/lib/ocaml/printexc.cmt +0 -0
- package/lib/ocaml/printexc.cmti +0 -0
- package/lib/ocaml/printexc.ml +79 -0
- package/lib/ocaml/printexc.mli +57 -0
- package/lib/ocaml/queue.cmi +0 -0
- package/lib/ocaml/queue.cmt +0 -0
- package/lib/ocaml/queue.cmti +0 -0
- package/lib/ocaml/queue.ml +132 -0
- package/lib/ocaml/queue.mli +82 -0
- package/lib/ocaml/random.cmi +0 -0
- package/lib/ocaml/random.cmt +0 -0
- package/lib/ocaml/random.cmti +0 -0
- package/lib/ocaml/random.ml +273 -0
- package/lib/ocaml/random.mli +102 -0
- package/lib/ocaml/set.cmi +0 -0
- package/lib/ocaml/set.cmt +0 -0
- package/lib/ocaml/set.cmti +0 -0
- package/lib/ocaml/set.ml +526 -0
- package/lib/ocaml/set.mli +266 -0
- package/lib/ocaml/setLabels.cmi +0 -0
- package/lib/ocaml/setLabels.cmt +0 -0
- package/lib/ocaml/setLabels.ml +526 -0
- package/lib/ocaml/setm.cppo.ml +346 -0
- package/lib/ocaml/setm.cppo.mli +126 -0
- package/lib/ocaml/sort.cmi +0 -0
- package/lib/ocaml/sort.cmt +0 -0
- package/lib/ocaml/sort.cmti +0 -0
- package/lib/ocaml/sort.cppo.ml +267 -0
- package/lib/ocaml/sort.cppo.mli +96 -0
- package/lib/ocaml/sort.ml +99 -0
- package/lib/ocaml/sort.mli +44 -0
- package/lib/ocaml/stack.cmi +0 -0
- package/lib/ocaml/stack.cmt +0 -0
- package/lib/ocaml/stack.cmti +0 -0
- package/lib/ocaml/stack.ml +44 -0
- package/lib/ocaml/stack.mli +63 -0
- package/lib/ocaml/stdLabels.cmi +0 -0
- package/lib/ocaml/stdLabels.cmt +0 -0
- package/lib/ocaml/stdLabels.cmti +0 -0
- package/lib/ocaml/stdLabels.ml +24 -0
- package/lib/ocaml/stdLabels.mli +29 -0
- package/lib/ocaml/stream.cmi +0 -0
- package/lib/ocaml/stream.cmt +0 -0
- package/lib/ocaml/stream.cmti +0 -0
- package/lib/ocaml/stream.ml +213 -0
- package/lib/ocaml/stream.mli +108 -0
- package/lib/ocaml/string.cmi +0 -0
- package/lib/ocaml/string.cmt +0 -0
- package/lib/ocaml/string.cmti +0 -0
- package/lib/ocaml/string.ml +190 -0
- package/lib/ocaml/string.mli +286 -0
- package/lib/ocaml/stringLabels.cmi +0 -0
- package/lib/ocaml/stringLabels.cmt +0 -0
- package/lib/ocaml/stringLabels.cmti +0 -0
- package/lib/ocaml/stringLabels.ml +190 -0
- package/lib/ocaml/stringLabels.mli +241 -0
- package/lib/ocaml/sys.cmi +0 -0
- package/lib/ocaml/sys.cmt +0 -0
- package/lib/ocaml/sys.cmti +0 -0
- package/lib/ocaml/sys.ml +135 -0
- package/lib/ocaml/sys.mli +333 -0
- package/lib/ocaml/uchar.cmi +0 -0
- package/lib/ocaml/uchar.cmt +0 -0
- package/lib/ocaml/uchar.cmti +0 -0
- package/lib/ocaml/uchar.ml +58 -0
- package/lib/ocaml/uchar.mli +98 -0
- package/linux/bsb_helper.exe +0 -0
- package/linux/bsc.exe +0 -0
- package/linux/ninja.COPYING +202 -0
- package/linux/ninja.exe +0 -0
- package/linux/refmt.exe +0 -0
- package/linux/rescript.exe +0 -0
- package/openbsd/.keep +0 -0
- package/package.json +71 -0
- package/rescript +591 -0
- package/scripts/LICENSE.ml +27 -0
- package/scripts/bin_path.js +38 -0
- package/scripts/buckle_lto.js +55 -0
- package/scripts/build_sorted.ml +233 -0
- package/scripts/buildocaml.js +102 -0
- package/scripts/caml_oo_curry_gen.ml +71 -0
- package/scripts/checkUnused.js +63 -0
- package/scripts/ciTest.js +172 -0
- package/scripts/config.js +24 -0
- package/scripts/cover.sh +3 -0
- package/scripts/curry_gen.ml +167 -0
- package/scripts/dbg +13 -0
- package/scripts/dedupe.js +44 -0
- package/scripts/doc_gen.js +117 -0
- package/scripts/install.js +237 -0
- package/scripts/installUtils.js +61 -0
- package/scripts/js_internal_gen.js +135 -0
- package/scripts/jsconfig.json +12 -0
- package/scripts/littlecase.js +21 -0
- package/scripts/ninja.js +1980 -0
- package/scripts/ninjaFactory.js +36 -0
- package/scripts/pack.js +107 -0
- package/scripts/prebuilt.js +99 -0
- package/scripts/release.js +41 -0
- package/scripts/repl.js +151 -0
- package/scripts/rescript_arg.js +168 -0
- package/scripts/rescript_convert.js +128 -0
- package/scripts/rescript_dump.js +48 -0
- package/scripts/rescript_format.js +194 -0
- package/scripts/shake.js +138 -0
- package/scripts/tasks.js +149 -0
- package/scripts/test.sh +3 -0
- package/scripts/tmp.js +98 -0
- package/scripts/validate.js +41 -0
- package/vendor/ninja.tar.gz +0 -0
- package/vendor/ocaml.tar.gz +0 -0
- package/win32/bsb_helper.exe +0 -0
- package/win32/bsc.exe +0 -0
- package/win32/ninja.COPYING +202 -0
- package/win32/ninja.exe +0 -0
- package/win32/refmt.exe +0 -0
- package/win32/rescript.exe +0 -0
|
@@ -0,0 +1,1144 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var Curry = require("./curry.js");
|
|
4
|
+
var Caml_option = require("./caml_option.js");
|
|
5
|
+
var Belt_SortArray = require("./belt_SortArray.js");
|
|
6
|
+
|
|
7
|
+
function treeHeight(n) {
|
|
8
|
+
if (n !== undefined) {
|
|
9
|
+
return n.h;
|
|
10
|
+
} else {
|
|
11
|
+
return 0;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
function copy(n) {
|
|
16
|
+
if (n !== undefined) {
|
|
17
|
+
return {
|
|
18
|
+
k: n.k,
|
|
19
|
+
v: n.v,
|
|
20
|
+
h: n.h,
|
|
21
|
+
l: copy(n.l),
|
|
22
|
+
r: copy(n.r)
|
|
23
|
+
};
|
|
24
|
+
} else {
|
|
25
|
+
return n;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function create(l, x, d, r) {
|
|
30
|
+
var hl = treeHeight(l);
|
|
31
|
+
var hr = treeHeight(r);
|
|
32
|
+
return {
|
|
33
|
+
k: x,
|
|
34
|
+
v: d,
|
|
35
|
+
h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0,
|
|
36
|
+
l: l,
|
|
37
|
+
r: r
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function singleton(x, d) {
|
|
42
|
+
return {
|
|
43
|
+
k: x,
|
|
44
|
+
v: d,
|
|
45
|
+
h: 1,
|
|
46
|
+
l: undefined,
|
|
47
|
+
r: undefined
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function heightGe(l, r) {
|
|
52
|
+
if (r !== undefined) {
|
|
53
|
+
if (l !== undefined) {
|
|
54
|
+
return l.h >= r.h;
|
|
55
|
+
} else {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
} else {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
function updateValue(n, newValue) {
|
|
64
|
+
if (n.v === newValue) {
|
|
65
|
+
return n;
|
|
66
|
+
} else {
|
|
67
|
+
return {
|
|
68
|
+
k: n.k,
|
|
69
|
+
v: newValue,
|
|
70
|
+
h: n.h,
|
|
71
|
+
l: n.l,
|
|
72
|
+
r: n.r
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
function bal(l, x, d, r) {
|
|
78
|
+
var hl = l !== undefined ? l.h : 0;
|
|
79
|
+
var hr = r !== undefined ? r.h : 0;
|
|
80
|
+
if (hl > (hr + 2 | 0)) {
|
|
81
|
+
var ll = l.l;
|
|
82
|
+
var lr = l.r;
|
|
83
|
+
if (treeHeight(ll) >= treeHeight(lr)) {
|
|
84
|
+
return create(ll, l.k, l.v, create(lr, x, d, r));
|
|
85
|
+
} else {
|
|
86
|
+
return create(create(ll, l.k, l.v, lr.l), lr.k, lr.v, create(lr.r, x, d, r));
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
if (hr <= (hl + 2 | 0)) {
|
|
90
|
+
return {
|
|
91
|
+
k: x,
|
|
92
|
+
v: d,
|
|
93
|
+
h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0,
|
|
94
|
+
l: l,
|
|
95
|
+
r: r
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
var rl = r.l;
|
|
99
|
+
var rr = r.r;
|
|
100
|
+
if (treeHeight(rr) >= treeHeight(rl)) {
|
|
101
|
+
return create(create(l, x, d, rl), r.k, r.v, rr);
|
|
102
|
+
} else {
|
|
103
|
+
return create(create(l, x, d, rl.l), rl.k, rl.v, create(rl.r, r.k, r.v, rr));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function minKey0Aux(_n) {
|
|
108
|
+
while(true) {
|
|
109
|
+
var n = _n;
|
|
110
|
+
var n$1 = n.l;
|
|
111
|
+
if (n$1 === undefined) {
|
|
112
|
+
return n.k;
|
|
113
|
+
}
|
|
114
|
+
_n = n$1;
|
|
115
|
+
continue ;
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
function minKey(n) {
|
|
120
|
+
if (n !== undefined) {
|
|
121
|
+
return Caml_option.some(minKey0Aux(n));
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
function minKeyUndefined(n) {
|
|
127
|
+
if (n !== undefined) {
|
|
128
|
+
return minKey0Aux(n);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
function maxKey0Aux(_n) {
|
|
134
|
+
while(true) {
|
|
135
|
+
var n = _n;
|
|
136
|
+
var n$1 = n.r;
|
|
137
|
+
if (n$1 === undefined) {
|
|
138
|
+
return n.k;
|
|
139
|
+
}
|
|
140
|
+
_n = n$1;
|
|
141
|
+
continue ;
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
function maxKey(n) {
|
|
146
|
+
if (n !== undefined) {
|
|
147
|
+
return Caml_option.some(maxKey0Aux(n));
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
function maxKeyUndefined(n) {
|
|
153
|
+
if (n !== undefined) {
|
|
154
|
+
return maxKey0Aux(n);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
function minKV0Aux(_n) {
|
|
160
|
+
while(true) {
|
|
161
|
+
var n = _n;
|
|
162
|
+
var n$1 = n.l;
|
|
163
|
+
if (n$1 === undefined) {
|
|
164
|
+
return [
|
|
165
|
+
n.k,
|
|
166
|
+
n.v
|
|
167
|
+
];
|
|
168
|
+
}
|
|
169
|
+
_n = n$1;
|
|
170
|
+
continue ;
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
function minimum(n) {
|
|
175
|
+
if (n !== undefined) {
|
|
176
|
+
return minKV0Aux(n);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
function minUndefined(n) {
|
|
182
|
+
if (n !== undefined) {
|
|
183
|
+
return minKV0Aux(n);
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
function maxKV0Aux(_n) {
|
|
189
|
+
while(true) {
|
|
190
|
+
var n = _n;
|
|
191
|
+
var n$1 = n.r;
|
|
192
|
+
if (n$1 === undefined) {
|
|
193
|
+
return [
|
|
194
|
+
n.k,
|
|
195
|
+
n.v
|
|
196
|
+
];
|
|
197
|
+
}
|
|
198
|
+
_n = n$1;
|
|
199
|
+
continue ;
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
function maximum(n) {
|
|
204
|
+
if (n !== undefined) {
|
|
205
|
+
return maxKV0Aux(n);
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
function maxUndefined(n) {
|
|
211
|
+
if (n !== undefined) {
|
|
212
|
+
return maxKV0Aux(n);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
function removeMinAuxWithRef(n, kr, vr) {
|
|
218
|
+
var ln = n.l;
|
|
219
|
+
if (ln !== undefined) {
|
|
220
|
+
return bal(removeMinAuxWithRef(ln, kr, vr), n.k, n.v, n.r);
|
|
221
|
+
} else {
|
|
222
|
+
kr.contents = n.k;
|
|
223
|
+
vr.contents = n.v;
|
|
224
|
+
return n.r;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
function isEmpty(x) {
|
|
229
|
+
return x === undefined;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
function stackAllLeft(_v, _s) {
|
|
233
|
+
while(true) {
|
|
234
|
+
var s = _s;
|
|
235
|
+
var v = _v;
|
|
236
|
+
if (v === undefined) {
|
|
237
|
+
return s;
|
|
238
|
+
}
|
|
239
|
+
_s = {
|
|
240
|
+
hd: v,
|
|
241
|
+
tl: s
|
|
242
|
+
};
|
|
243
|
+
_v = v.l;
|
|
244
|
+
continue ;
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
function findFirstByU(n, p) {
|
|
249
|
+
if (n === undefined) {
|
|
250
|
+
return ;
|
|
251
|
+
}
|
|
252
|
+
var left = findFirstByU(n.l, p);
|
|
253
|
+
if (left !== undefined) {
|
|
254
|
+
return left;
|
|
255
|
+
}
|
|
256
|
+
var v = n.k;
|
|
257
|
+
var d = n.v;
|
|
258
|
+
var pvd = p(v, d);
|
|
259
|
+
if (pvd) {
|
|
260
|
+
return [
|
|
261
|
+
v,
|
|
262
|
+
d
|
|
263
|
+
];
|
|
264
|
+
}
|
|
265
|
+
var right = findFirstByU(n.r, p);
|
|
266
|
+
if (right !== undefined) {
|
|
267
|
+
return right;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
function findFirstBy(n, p) {
|
|
273
|
+
return findFirstByU(n, Curry.__2(p));
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
function forEachU(_n, f) {
|
|
277
|
+
while(true) {
|
|
278
|
+
var n = _n;
|
|
279
|
+
if (n === undefined) {
|
|
280
|
+
return ;
|
|
281
|
+
}
|
|
282
|
+
forEachU(n.l, f);
|
|
283
|
+
f(n.k, n.v);
|
|
284
|
+
_n = n.r;
|
|
285
|
+
continue ;
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
function forEach(n, f) {
|
|
290
|
+
forEachU(n, Curry.__2(f));
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
function mapU(n, f) {
|
|
294
|
+
if (n === undefined) {
|
|
295
|
+
return ;
|
|
296
|
+
}
|
|
297
|
+
var newLeft = mapU(n.l, f);
|
|
298
|
+
var newD = f(n.v);
|
|
299
|
+
var newRight = mapU(n.r, f);
|
|
300
|
+
return {
|
|
301
|
+
k: n.k,
|
|
302
|
+
v: newD,
|
|
303
|
+
h: n.h,
|
|
304
|
+
l: newLeft,
|
|
305
|
+
r: newRight
|
|
306
|
+
};
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
function map(n, f) {
|
|
310
|
+
return mapU(n, Curry.__1(f));
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
function mapWithKeyU(n, f) {
|
|
314
|
+
if (n === undefined) {
|
|
315
|
+
return ;
|
|
316
|
+
}
|
|
317
|
+
var key = n.k;
|
|
318
|
+
var newLeft = mapWithKeyU(n.l, f);
|
|
319
|
+
var newD = f(key, n.v);
|
|
320
|
+
var newRight = mapWithKeyU(n.r, f);
|
|
321
|
+
return {
|
|
322
|
+
k: key,
|
|
323
|
+
v: newD,
|
|
324
|
+
h: n.h,
|
|
325
|
+
l: newLeft,
|
|
326
|
+
r: newRight
|
|
327
|
+
};
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
function mapWithKey(n, f) {
|
|
331
|
+
return mapWithKeyU(n, Curry.__2(f));
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
function reduceU(_m, _accu, f) {
|
|
335
|
+
while(true) {
|
|
336
|
+
var accu = _accu;
|
|
337
|
+
var m = _m;
|
|
338
|
+
if (m === undefined) {
|
|
339
|
+
return accu;
|
|
340
|
+
}
|
|
341
|
+
var v = m.k;
|
|
342
|
+
var d = m.v;
|
|
343
|
+
var l = m.l;
|
|
344
|
+
var r = m.r;
|
|
345
|
+
_accu = f(reduceU(l, accu, f), v, d);
|
|
346
|
+
_m = r;
|
|
347
|
+
continue ;
|
|
348
|
+
};
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
function reduce(m, accu, f) {
|
|
352
|
+
return reduceU(m, accu, Curry.__3(f));
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
function everyU(_n, p) {
|
|
356
|
+
while(true) {
|
|
357
|
+
var n = _n;
|
|
358
|
+
if (n === undefined) {
|
|
359
|
+
return true;
|
|
360
|
+
}
|
|
361
|
+
if (!p(n.k, n.v)) {
|
|
362
|
+
return false;
|
|
363
|
+
}
|
|
364
|
+
if (!everyU(n.l, p)) {
|
|
365
|
+
return false;
|
|
366
|
+
}
|
|
367
|
+
_n = n.r;
|
|
368
|
+
continue ;
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
function every(n, p) {
|
|
373
|
+
return everyU(n, Curry.__2(p));
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
function someU(_n, p) {
|
|
377
|
+
while(true) {
|
|
378
|
+
var n = _n;
|
|
379
|
+
if (n === undefined) {
|
|
380
|
+
return false;
|
|
381
|
+
}
|
|
382
|
+
if (p(n.k, n.v)) {
|
|
383
|
+
return true;
|
|
384
|
+
}
|
|
385
|
+
if (someU(n.l, p)) {
|
|
386
|
+
return true;
|
|
387
|
+
}
|
|
388
|
+
_n = n.r;
|
|
389
|
+
continue ;
|
|
390
|
+
};
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
function some(n, p) {
|
|
394
|
+
return someU(n, Curry.__2(p));
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
function addMinElement(n, k, v) {
|
|
398
|
+
if (n !== undefined) {
|
|
399
|
+
return bal(addMinElement(n.l, k, v), n.k, n.v, n.r);
|
|
400
|
+
} else {
|
|
401
|
+
return singleton(k, v);
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
function addMaxElement(n, k, v) {
|
|
406
|
+
if (n !== undefined) {
|
|
407
|
+
return bal(n.l, n.k, n.v, addMaxElement(n.r, k, v));
|
|
408
|
+
} else {
|
|
409
|
+
return singleton(k, v);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
function join(ln, v, d, rn) {
|
|
414
|
+
if (ln === undefined) {
|
|
415
|
+
return addMinElement(rn, v, d);
|
|
416
|
+
}
|
|
417
|
+
if (rn === undefined) {
|
|
418
|
+
return addMaxElement(ln, v, d);
|
|
419
|
+
}
|
|
420
|
+
var lv = ln.k;
|
|
421
|
+
var ld = ln.v;
|
|
422
|
+
var lh = ln.h;
|
|
423
|
+
var ll = ln.l;
|
|
424
|
+
var lr = ln.r;
|
|
425
|
+
var rv = rn.k;
|
|
426
|
+
var rd = rn.v;
|
|
427
|
+
var rh = rn.h;
|
|
428
|
+
var rl = rn.l;
|
|
429
|
+
var rr = rn.r;
|
|
430
|
+
if (lh > (rh + 2 | 0)) {
|
|
431
|
+
return bal(ll, lv, ld, join(lr, v, d, rn));
|
|
432
|
+
} else if (rh > (lh + 2 | 0)) {
|
|
433
|
+
return bal(join(ln, v, d, rl), rv, rd, rr);
|
|
434
|
+
} else {
|
|
435
|
+
return create(ln, v, d, rn);
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
function concat(t1, t2) {
|
|
440
|
+
if (t1 === undefined) {
|
|
441
|
+
return t2;
|
|
442
|
+
}
|
|
443
|
+
if (t2 === undefined) {
|
|
444
|
+
return t1;
|
|
445
|
+
}
|
|
446
|
+
var kr = {
|
|
447
|
+
contents: t2.k
|
|
448
|
+
};
|
|
449
|
+
var vr = {
|
|
450
|
+
contents: t2.v
|
|
451
|
+
};
|
|
452
|
+
var t2r = removeMinAuxWithRef(t2, kr, vr);
|
|
453
|
+
return join(t1, kr.contents, vr.contents, t2r);
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
function concatOrJoin(t1, v, d, t2) {
|
|
457
|
+
if (d !== undefined) {
|
|
458
|
+
return join(t1, v, Caml_option.valFromOption(d), t2);
|
|
459
|
+
} else {
|
|
460
|
+
return concat(t1, t2);
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
function keepSharedU(n, p) {
|
|
465
|
+
if (n === undefined) {
|
|
466
|
+
return ;
|
|
467
|
+
}
|
|
468
|
+
var v = n.k;
|
|
469
|
+
var d = n.v;
|
|
470
|
+
var newLeft = keepSharedU(n.l, p);
|
|
471
|
+
var pvd = p(v, d);
|
|
472
|
+
var newRight = keepSharedU(n.r, p);
|
|
473
|
+
if (pvd) {
|
|
474
|
+
return join(newLeft, v, d, newRight);
|
|
475
|
+
} else {
|
|
476
|
+
return concat(newLeft, newRight);
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
|
|
480
|
+
function keepShared(n, p) {
|
|
481
|
+
return keepSharedU(n, Curry.__2(p));
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
function keepMapU(n, p) {
|
|
485
|
+
if (n === undefined) {
|
|
486
|
+
return ;
|
|
487
|
+
}
|
|
488
|
+
var v = n.k;
|
|
489
|
+
var d = n.v;
|
|
490
|
+
var newLeft = keepMapU(n.l, p);
|
|
491
|
+
var pvd = p(v, d);
|
|
492
|
+
var newRight = keepMapU(n.r, p);
|
|
493
|
+
if (pvd !== undefined) {
|
|
494
|
+
return join(newLeft, v, Caml_option.valFromOption(pvd), newRight);
|
|
495
|
+
} else {
|
|
496
|
+
return concat(newLeft, newRight);
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
function keepMap(n, p) {
|
|
501
|
+
return keepMapU(n, Curry.__2(p));
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
function partitionSharedU(n, p) {
|
|
505
|
+
if (n === undefined) {
|
|
506
|
+
return [
|
|
507
|
+
undefined,
|
|
508
|
+
undefined
|
|
509
|
+
];
|
|
510
|
+
}
|
|
511
|
+
var key = n.k;
|
|
512
|
+
var value = n.v;
|
|
513
|
+
var match = partitionSharedU(n.l, p);
|
|
514
|
+
var lf = match[1];
|
|
515
|
+
var lt = match[0];
|
|
516
|
+
var pvd = p(key, value);
|
|
517
|
+
var match$1 = partitionSharedU(n.r, p);
|
|
518
|
+
var rf = match$1[1];
|
|
519
|
+
var rt = match$1[0];
|
|
520
|
+
if (pvd) {
|
|
521
|
+
return [
|
|
522
|
+
join(lt, key, value, rt),
|
|
523
|
+
concat(lf, rf)
|
|
524
|
+
];
|
|
525
|
+
} else {
|
|
526
|
+
return [
|
|
527
|
+
concat(lt, rt),
|
|
528
|
+
join(lf, key, value, rf)
|
|
529
|
+
];
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
function partitionShared(n, p) {
|
|
534
|
+
return partitionSharedU(n, Curry.__2(p));
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
function lengthNode(n) {
|
|
538
|
+
var l = n.l;
|
|
539
|
+
var r = n.r;
|
|
540
|
+
var sizeL = l !== undefined ? lengthNode(l) : 0;
|
|
541
|
+
var sizeR = r !== undefined ? lengthNode(r) : 0;
|
|
542
|
+
return (1 + sizeL | 0) + sizeR | 0;
|
|
543
|
+
}
|
|
544
|
+
|
|
545
|
+
function size(n) {
|
|
546
|
+
if (n !== undefined) {
|
|
547
|
+
return lengthNode(n);
|
|
548
|
+
} else {
|
|
549
|
+
return 0;
|
|
550
|
+
}
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
function toListAux(_n, _accu) {
|
|
554
|
+
while(true) {
|
|
555
|
+
var accu = _accu;
|
|
556
|
+
var n = _n;
|
|
557
|
+
if (n === undefined) {
|
|
558
|
+
return accu;
|
|
559
|
+
}
|
|
560
|
+
var k = n.k;
|
|
561
|
+
var v = n.v;
|
|
562
|
+
var l = n.l;
|
|
563
|
+
var r = n.r;
|
|
564
|
+
_accu = {
|
|
565
|
+
hd: [
|
|
566
|
+
k,
|
|
567
|
+
v
|
|
568
|
+
],
|
|
569
|
+
tl: toListAux(r, accu)
|
|
570
|
+
};
|
|
571
|
+
_n = l;
|
|
572
|
+
continue ;
|
|
573
|
+
};
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
function toList(s) {
|
|
577
|
+
return toListAux(s, /* [] */0);
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
function checkInvariantInternal(_v) {
|
|
581
|
+
while(true) {
|
|
582
|
+
var v = _v;
|
|
583
|
+
if (v === undefined) {
|
|
584
|
+
return ;
|
|
585
|
+
}
|
|
586
|
+
var l = v.l;
|
|
587
|
+
var r = v.r;
|
|
588
|
+
var diff = treeHeight(l) - treeHeight(r) | 0;
|
|
589
|
+
if (!(diff <= 2 && diff >= -2)) {
|
|
590
|
+
throw {
|
|
591
|
+
RE_EXN_ID: "Assert_failure",
|
|
592
|
+
_1: [
|
|
593
|
+
"belt_internalAVLtree.ml",
|
|
594
|
+
373,
|
|
595
|
+
4
|
|
596
|
+
],
|
|
597
|
+
Error: new Error()
|
|
598
|
+
};
|
|
599
|
+
}
|
|
600
|
+
checkInvariantInternal(l);
|
|
601
|
+
_v = r;
|
|
602
|
+
continue ;
|
|
603
|
+
};
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
function fillArrayKey(_n, _i, arr) {
|
|
607
|
+
while(true) {
|
|
608
|
+
var i = _i;
|
|
609
|
+
var n = _n;
|
|
610
|
+
var v = n.k;
|
|
611
|
+
var l = n.l;
|
|
612
|
+
var r = n.r;
|
|
613
|
+
var next = l !== undefined ? fillArrayKey(l, i, arr) : i;
|
|
614
|
+
arr[next] = v;
|
|
615
|
+
var rnext = next + 1 | 0;
|
|
616
|
+
if (r === undefined) {
|
|
617
|
+
return rnext;
|
|
618
|
+
}
|
|
619
|
+
_i = rnext;
|
|
620
|
+
_n = r;
|
|
621
|
+
continue ;
|
|
622
|
+
};
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
function fillArrayValue(_n, _i, arr) {
|
|
626
|
+
while(true) {
|
|
627
|
+
var i = _i;
|
|
628
|
+
var n = _n;
|
|
629
|
+
var l = n.l;
|
|
630
|
+
var r = n.r;
|
|
631
|
+
var next = l !== undefined ? fillArrayValue(l, i, arr) : i;
|
|
632
|
+
arr[next] = n.v;
|
|
633
|
+
var rnext = next + 1 | 0;
|
|
634
|
+
if (r === undefined) {
|
|
635
|
+
return rnext;
|
|
636
|
+
}
|
|
637
|
+
_i = rnext;
|
|
638
|
+
_n = r;
|
|
639
|
+
continue ;
|
|
640
|
+
};
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
function fillArray(_n, _i, arr) {
|
|
644
|
+
while(true) {
|
|
645
|
+
var i = _i;
|
|
646
|
+
var n = _n;
|
|
647
|
+
var l = n.l;
|
|
648
|
+
var v = n.k;
|
|
649
|
+
var r = n.r;
|
|
650
|
+
var next = l !== undefined ? fillArray(l, i, arr) : i;
|
|
651
|
+
arr[next] = [
|
|
652
|
+
v,
|
|
653
|
+
n.v
|
|
654
|
+
];
|
|
655
|
+
var rnext = next + 1 | 0;
|
|
656
|
+
if (r === undefined) {
|
|
657
|
+
return rnext;
|
|
658
|
+
}
|
|
659
|
+
_i = rnext;
|
|
660
|
+
_n = r;
|
|
661
|
+
continue ;
|
|
662
|
+
};
|
|
663
|
+
}
|
|
664
|
+
|
|
665
|
+
function toArray(n) {
|
|
666
|
+
if (n === undefined) {
|
|
667
|
+
return [];
|
|
668
|
+
}
|
|
669
|
+
var size = lengthNode(n);
|
|
670
|
+
var v = new Array(size);
|
|
671
|
+
fillArray(n, 0, v);
|
|
672
|
+
return v;
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
function keysToArray(n) {
|
|
676
|
+
if (n === undefined) {
|
|
677
|
+
return [];
|
|
678
|
+
}
|
|
679
|
+
var size = lengthNode(n);
|
|
680
|
+
var v = new Array(size);
|
|
681
|
+
fillArrayKey(n, 0, v);
|
|
682
|
+
return v;
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
function valuesToArray(n) {
|
|
686
|
+
if (n === undefined) {
|
|
687
|
+
return [];
|
|
688
|
+
}
|
|
689
|
+
var size = lengthNode(n);
|
|
690
|
+
var v = new Array(size);
|
|
691
|
+
fillArrayValue(n, 0, v);
|
|
692
|
+
return v;
|
|
693
|
+
}
|
|
694
|
+
|
|
695
|
+
function fromSortedArrayRevAux(arr, off, len) {
|
|
696
|
+
switch (len) {
|
|
697
|
+
case 0 :
|
|
698
|
+
return ;
|
|
699
|
+
case 1 :
|
|
700
|
+
var match = arr[off];
|
|
701
|
+
return singleton(match[0], match[1]);
|
|
702
|
+
case 2 :
|
|
703
|
+
var match_0 = arr[off];
|
|
704
|
+
var match_1 = arr[off - 1 | 0];
|
|
705
|
+
var match$1 = match_1;
|
|
706
|
+
var match$2 = match_0;
|
|
707
|
+
return {
|
|
708
|
+
k: match$1[0],
|
|
709
|
+
v: match$1[1],
|
|
710
|
+
h: 2,
|
|
711
|
+
l: singleton(match$2[0], match$2[1]),
|
|
712
|
+
r: undefined
|
|
713
|
+
};
|
|
714
|
+
case 3 :
|
|
715
|
+
var match_0$1 = arr[off];
|
|
716
|
+
var match_1$1 = arr[off - 1 | 0];
|
|
717
|
+
var match_2 = arr[off - 2 | 0];
|
|
718
|
+
var match$3 = match_2;
|
|
719
|
+
var match$4 = match_1$1;
|
|
720
|
+
var match$5 = match_0$1;
|
|
721
|
+
return {
|
|
722
|
+
k: match$4[0],
|
|
723
|
+
v: match$4[1],
|
|
724
|
+
h: 2,
|
|
725
|
+
l: singleton(match$5[0], match$5[1]),
|
|
726
|
+
r: singleton(match$3[0], match$3[1])
|
|
727
|
+
};
|
|
728
|
+
default:
|
|
729
|
+
var nl = len / 2 | 0;
|
|
730
|
+
var left = fromSortedArrayRevAux(arr, off, nl);
|
|
731
|
+
var match$6 = arr[off - nl | 0];
|
|
732
|
+
var right = fromSortedArrayRevAux(arr, (off - nl | 0) - 1 | 0, (len - nl | 0) - 1 | 0);
|
|
733
|
+
return create(left, match$6[0], match$6[1], right);
|
|
734
|
+
}
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
function fromSortedArrayAux(arr, off, len) {
|
|
738
|
+
switch (len) {
|
|
739
|
+
case 0 :
|
|
740
|
+
return ;
|
|
741
|
+
case 1 :
|
|
742
|
+
var match = arr[off];
|
|
743
|
+
return singleton(match[0], match[1]);
|
|
744
|
+
case 2 :
|
|
745
|
+
var match_0 = arr[off];
|
|
746
|
+
var match_1 = arr[off + 1 | 0];
|
|
747
|
+
var match$1 = match_1;
|
|
748
|
+
var match$2 = match_0;
|
|
749
|
+
return {
|
|
750
|
+
k: match$1[0],
|
|
751
|
+
v: match$1[1],
|
|
752
|
+
h: 2,
|
|
753
|
+
l: singleton(match$2[0], match$2[1]),
|
|
754
|
+
r: undefined
|
|
755
|
+
};
|
|
756
|
+
case 3 :
|
|
757
|
+
var match_0$1 = arr[off];
|
|
758
|
+
var match_1$1 = arr[off + 1 | 0];
|
|
759
|
+
var match_2 = arr[off + 2 | 0];
|
|
760
|
+
var match$3 = match_2;
|
|
761
|
+
var match$4 = match_1$1;
|
|
762
|
+
var match$5 = match_0$1;
|
|
763
|
+
return {
|
|
764
|
+
k: match$4[0],
|
|
765
|
+
v: match$4[1],
|
|
766
|
+
h: 2,
|
|
767
|
+
l: singleton(match$5[0], match$5[1]),
|
|
768
|
+
r: singleton(match$3[0], match$3[1])
|
|
769
|
+
};
|
|
770
|
+
default:
|
|
771
|
+
var nl = len / 2 | 0;
|
|
772
|
+
var left = fromSortedArrayAux(arr, off, nl);
|
|
773
|
+
var match$6 = arr[off + nl | 0];
|
|
774
|
+
var right = fromSortedArrayAux(arr, (off + nl | 0) + 1 | 0, (len - nl | 0) - 1 | 0);
|
|
775
|
+
return create(left, match$6[0], match$6[1], right);
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
|
|
779
|
+
function fromSortedArrayUnsafe(arr) {
|
|
780
|
+
return fromSortedArrayAux(arr, 0, arr.length);
|
|
781
|
+
}
|
|
782
|
+
|
|
783
|
+
function cmpU(s1, s2, kcmp, vcmp) {
|
|
784
|
+
var len1 = size(s1);
|
|
785
|
+
var len2 = size(s2);
|
|
786
|
+
if (len1 === len2) {
|
|
787
|
+
var _e1 = stackAllLeft(s1, /* [] */0);
|
|
788
|
+
var _e2 = stackAllLeft(s2, /* [] */0);
|
|
789
|
+
while(true) {
|
|
790
|
+
var e2 = _e2;
|
|
791
|
+
var e1 = _e1;
|
|
792
|
+
if (!e1) {
|
|
793
|
+
return 0;
|
|
794
|
+
}
|
|
795
|
+
if (!e2) {
|
|
796
|
+
return 0;
|
|
797
|
+
}
|
|
798
|
+
var h2 = e2.hd;
|
|
799
|
+
var h1 = e1.hd;
|
|
800
|
+
var c = kcmp(h1.k, h2.k);
|
|
801
|
+
if (c !== 0) {
|
|
802
|
+
return c;
|
|
803
|
+
}
|
|
804
|
+
var cx = vcmp(h1.v, h2.v);
|
|
805
|
+
if (cx !== 0) {
|
|
806
|
+
return cx;
|
|
807
|
+
}
|
|
808
|
+
_e2 = stackAllLeft(h2.r, e2.tl);
|
|
809
|
+
_e1 = stackAllLeft(h1.r, e1.tl);
|
|
810
|
+
continue ;
|
|
811
|
+
};
|
|
812
|
+
} else if (len1 < len2) {
|
|
813
|
+
return -1;
|
|
814
|
+
} else {
|
|
815
|
+
return 1;
|
|
816
|
+
}
|
|
817
|
+
}
|
|
818
|
+
|
|
819
|
+
function cmp(s1, s2, kcmp, vcmp) {
|
|
820
|
+
return cmpU(s1, s2, kcmp, Curry.__2(vcmp));
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
function eqU(s1, s2, kcmp, veq) {
|
|
824
|
+
var len1 = size(s1);
|
|
825
|
+
var len2 = size(s2);
|
|
826
|
+
if (len1 === len2) {
|
|
827
|
+
var _e1 = stackAllLeft(s1, /* [] */0);
|
|
828
|
+
var _e2 = stackAllLeft(s2, /* [] */0);
|
|
829
|
+
while(true) {
|
|
830
|
+
var e2 = _e2;
|
|
831
|
+
var e1 = _e1;
|
|
832
|
+
if (!e1) {
|
|
833
|
+
return true;
|
|
834
|
+
}
|
|
835
|
+
if (!e2) {
|
|
836
|
+
return true;
|
|
837
|
+
}
|
|
838
|
+
var h2 = e2.hd;
|
|
839
|
+
var h1 = e1.hd;
|
|
840
|
+
if (!(kcmp(h1.k, h2.k) === 0 && veq(h1.v, h2.v))) {
|
|
841
|
+
return false;
|
|
842
|
+
}
|
|
843
|
+
_e2 = stackAllLeft(h2.r, e2.tl);
|
|
844
|
+
_e1 = stackAllLeft(h1.r, e1.tl);
|
|
845
|
+
continue ;
|
|
846
|
+
};
|
|
847
|
+
} else {
|
|
848
|
+
return false;
|
|
849
|
+
}
|
|
850
|
+
}
|
|
851
|
+
|
|
852
|
+
function eq(s1, s2, kcmp, veq) {
|
|
853
|
+
return eqU(s1, s2, kcmp, Curry.__2(veq));
|
|
854
|
+
}
|
|
855
|
+
|
|
856
|
+
function get(_n, x, cmp) {
|
|
857
|
+
while(true) {
|
|
858
|
+
var n = _n;
|
|
859
|
+
if (n === undefined) {
|
|
860
|
+
return ;
|
|
861
|
+
}
|
|
862
|
+
var v = n.k;
|
|
863
|
+
var c = cmp(x, v);
|
|
864
|
+
if (c === 0) {
|
|
865
|
+
return Caml_option.some(n.v);
|
|
866
|
+
}
|
|
867
|
+
_n = c < 0 ? n.l : n.r;
|
|
868
|
+
continue ;
|
|
869
|
+
};
|
|
870
|
+
}
|
|
871
|
+
|
|
872
|
+
function getUndefined(_n, x, cmp) {
|
|
873
|
+
while(true) {
|
|
874
|
+
var n = _n;
|
|
875
|
+
if (n === undefined) {
|
|
876
|
+
return ;
|
|
877
|
+
}
|
|
878
|
+
var v = n.k;
|
|
879
|
+
var c = cmp(x, v);
|
|
880
|
+
if (c === 0) {
|
|
881
|
+
return n.v;
|
|
882
|
+
}
|
|
883
|
+
_n = c < 0 ? n.l : n.r;
|
|
884
|
+
continue ;
|
|
885
|
+
};
|
|
886
|
+
}
|
|
887
|
+
|
|
888
|
+
function getExn(_n, x, cmp) {
|
|
889
|
+
while(true) {
|
|
890
|
+
var n = _n;
|
|
891
|
+
if (n !== undefined) {
|
|
892
|
+
var v = n.k;
|
|
893
|
+
var c = cmp(x, v);
|
|
894
|
+
if (c === 0) {
|
|
895
|
+
return n.v;
|
|
896
|
+
}
|
|
897
|
+
_n = c < 0 ? n.l : n.r;
|
|
898
|
+
continue ;
|
|
899
|
+
}
|
|
900
|
+
throw {
|
|
901
|
+
RE_EXN_ID: "Not_found",
|
|
902
|
+
Error: new Error()
|
|
903
|
+
};
|
|
904
|
+
};
|
|
905
|
+
}
|
|
906
|
+
|
|
907
|
+
function getWithDefault(_n, x, def, cmp) {
|
|
908
|
+
while(true) {
|
|
909
|
+
var n = _n;
|
|
910
|
+
if (n === undefined) {
|
|
911
|
+
return def;
|
|
912
|
+
}
|
|
913
|
+
var v = n.k;
|
|
914
|
+
var c = cmp(x, v);
|
|
915
|
+
if (c === 0) {
|
|
916
|
+
return n.v;
|
|
917
|
+
}
|
|
918
|
+
_n = c < 0 ? n.l : n.r;
|
|
919
|
+
continue ;
|
|
920
|
+
};
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
function has(_n, x, cmp) {
|
|
924
|
+
while(true) {
|
|
925
|
+
var n = _n;
|
|
926
|
+
if (n === undefined) {
|
|
927
|
+
return false;
|
|
928
|
+
}
|
|
929
|
+
var v = n.k;
|
|
930
|
+
var c = cmp(x, v);
|
|
931
|
+
if (c === 0) {
|
|
932
|
+
return true;
|
|
933
|
+
}
|
|
934
|
+
_n = c < 0 ? n.l : n.r;
|
|
935
|
+
continue ;
|
|
936
|
+
};
|
|
937
|
+
}
|
|
938
|
+
|
|
939
|
+
function rotateWithLeftChild(k2) {
|
|
940
|
+
var k1 = k2.l;
|
|
941
|
+
k2.l = k1.r;
|
|
942
|
+
k1.r = k2;
|
|
943
|
+
var hlk2 = treeHeight(k2.l);
|
|
944
|
+
var hrk2 = treeHeight(k2.r);
|
|
945
|
+
k2.h = (
|
|
946
|
+
hlk2 > hrk2 ? hlk2 : hrk2
|
|
947
|
+
) + 1 | 0;
|
|
948
|
+
var hlk1 = treeHeight(k1.l);
|
|
949
|
+
var hk2 = k2.h;
|
|
950
|
+
k1.h = (
|
|
951
|
+
hlk1 > hk2 ? hlk1 : hk2
|
|
952
|
+
) + 1 | 0;
|
|
953
|
+
return k1;
|
|
954
|
+
}
|
|
955
|
+
|
|
956
|
+
function rotateWithRightChild(k1) {
|
|
957
|
+
var k2 = k1.r;
|
|
958
|
+
k1.r = k2.l;
|
|
959
|
+
k2.l = k1;
|
|
960
|
+
var hlk1 = treeHeight(k1.l);
|
|
961
|
+
var hrk1 = treeHeight(k1.r);
|
|
962
|
+
k1.h = (
|
|
963
|
+
hlk1 > hrk1 ? hlk1 : hrk1
|
|
964
|
+
) + 1 | 0;
|
|
965
|
+
var hrk2 = treeHeight(k2.r);
|
|
966
|
+
var hk1 = k1.h;
|
|
967
|
+
k2.h = (
|
|
968
|
+
hrk2 > hk1 ? hrk2 : hk1
|
|
969
|
+
) + 1 | 0;
|
|
970
|
+
return k2;
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
function doubleWithLeftChild(k3) {
|
|
974
|
+
var x = k3.l;
|
|
975
|
+
var v = rotateWithRightChild(x);
|
|
976
|
+
k3.l = v;
|
|
977
|
+
return rotateWithLeftChild(k3);
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
function doubleWithRightChild(k2) {
|
|
981
|
+
var x = k2.r;
|
|
982
|
+
var v = rotateWithLeftChild(x);
|
|
983
|
+
k2.r = v;
|
|
984
|
+
return rotateWithRightChild(k2);
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
function heightUpdateMutate(t) {
|
|
988
|
+
var hlt = treeHeight(t.l);
|
|
989
|
+
var hrt = treeHeight(t.r);
|
|
990
|
+
t.h = (
|
|
991
|
+
hlt > hrt ? hlt : hrt
|
|
992
|
+
) + 1 | 0;
|
|
993
|
+
return t;
|
|
994
|
+
}
|
|
995
|
+
|
|
996
|
+
function balMutate(nt) {
|
|
997
|
+
var l = nt.l;
|
|
998
|
+
var r = nt.r;
|
|
999
|
+
var hl = treeHeight(l);
|
|
1000
|
+
var hr = treeHeight(r);
|
|
1001
|
+
if (hl > (2 + hr | 0)) {
|
|
1002
|
+
var ll = l.l;
|
|
1003
|
+
var lr = l.r;
|
|
1004
|
+
if (heightGe(ll, lr)) {
|
|
1005
|
+
return heightUpdateMutate(rotateWithLeftChild(nt));
|
|
1006
|
+
} else {
|
|
1007
|
+
return heightUpdateMutate(doubleWithLeftChild(nt));
|
|
1008
|
+
}
|
|
1009
|
+
}
|
|
1010
|
+
if (hr > (2 + hl | 0)) {
|
|
1011
|
+
var rl = r.l;
|
|
1012
|
+
var rr = r.r;
|
|
1013
|
+
if (heightGe(rr, rl)) {
|
|
1014
|
+
return heightUpdateMutate(rotateWithRightChild(nt));
|
|
1015
|
+
} else {
|
|
1016
|
+
return heightUpdateMutate(doubleWithRightChild(nt));
|
|
1017
|
+
}
|
|
1018
|
+
}
|
|
1019
|
+
nt.h = (
|
|
1020
|
+
hl > hr ? hl : hr
|
|
1021
|
+
) + 1 | 0;
|
|
1022
|
+
return nt;
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
function updateMutate(t, x, data, cmp) {
|
|
1026
|
+
if (t === undefined) {
|
|
1027
|
+
return singleton(x, data);
|
|
1028
|
+
}
|
|
1029
|
+
var k = t.k;
|
|
1030
|
+
var c = cmp(x, k);
|
|
1031
|
+
if (c === 0) {
|
|
1032
|
+
t.v = data;
|
|
1033
|
+
return t;
|
|
1034
|
+
}
|
|
1035
|
+
var l = t.l;
|
|
1036
|
+
var r = t.r;
|
|
1037
|
+
if (c < 0) {
|
|
1038
|
+
var ll = updateMutate(l, x, data, cmp);
|
|
1039
|
+
t.l = ll;
|
|
1040
|
+
} else {
|
|
1041
|
+
t.r = updateMutate(r, x, data, cmp);
|
|
1042
|
+
}
|
|
1043
|
+
return balMutate(t);
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
function fromArray(xs, cmp) {
|
|
1047
|
+
var len = xs.length;
|
|
1048
|
+
if (len === 0) {
|
|
1049
|
+
return ;
|
|
1050
|
+
}
|
|
1051
|
+
var next = Belt_SortArray.strictlySortedLengthU(xs, (function (param, param$1) {
|
|
1052
|
+
return cmp(param[0], param$1[0]) < 0;
|
|
1053
|
+
}));
|
|
1054
|
+
var result;
|
|
1055
|
+
if (next >= 0) {
|
|
1056
|
+
result = fromSortedArrayAux(xs, 0, next);
|
|
1057
|
+
} else {
|
|
1058
|
+
next = -next | 0;
|
|
1059
|
+
result = fromSortedArrayRevAux(xs, next - 1 | 0, next);
|
|
1060
|
+
}
|
|
1061
|
+
for(var i = next; i < len; ++i){
|
|
1062
|
+
var match = xs[i];
|
|
1063
|
+
result = updateMutate(result, match[0], match[1], cmp);
|
|
1064
|
+
}
|
|
1065
|
+
return result;
|
|
1066
|
+
}
|
|
1067
|
+
|
|
1068
|
+
function removeMinAuxWithRootMutate(nt, n) {
|
|
1069
|
+
var rn = n.r;
|
|
1070
|
+
var ln = n.l;
|
|
1071
|
+
if (ln !== undefined) {
|
|
1072
|
+
n.l = removeMinAuxWithRootMutate(nt, ln);
|
|
1073
|
+
return balMutate(n);
|
|
1074
|
+
} else {
|
|
1075
|
+
nt.k = n.k;
|
|
1076
|
+
nt.v = n.v;
|
|
1077
|
+
return rn;
|
|
1078
|
+
}
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
exports.copy = copy;
|
|
1082
|
+
exports.create = create;
|
|
1083
|
+
exports.bal = bal;
|
|
1084
|
+
exports.singleton = singleton;
|
|
1085
|
+
exports.updateValue = updateValue;
|
|
1086
|
+
exports.minKey = minKey;
|
|
1087
|
+
exports.minKeyUndefined = minKeyUndefined;
|
|
1088
|
+
exports.maxKey = maxKey;
|
|
1089
|
+
exports.maxKeyUndefined = maxKeyUndefined;
|
|
1090
|
+
exports.minimum = minimum;
|
|
1091
|
+
exports.minUndefined = minUndefined;
|
|
1092
|
+
exports.maximum = maximum;
|
|
1093
|
+
exports.maxUndefined = maxUndefined;
|
|
1094
|
+
exports.removeMinAuxWithRef = removeMinAuxWithRef;
|
|
1095
|
+
exports.isEmpty = isEmpty;
|
|
1096
|
+
exports.stackAllLeft = stackAllLeft;
|
|
1097
|
+
exports.findFirstByU = findFirstByU;
|
|
1098
|
+
exports.findFirstBy = findFirstBy;
|
|
1099
|
+
exports.forEachU = forEachU;
|
|
1100
|
+
exports.forEach = forEach;
|
|
1101
|
+
exports.mapU = mapU;
|
|
1102
|
+
exports.map = map;
|
|
1103
|
+
exports.mapWithKeyU = mapWithKeyU;
|
|
1104
|
+
exports.mapWithKey = mapWithKey;
|
|
1105
|
+
exports.reduceU = reduceU;
|
|
1106
|
+
exports.reduce = reduce;
|
|
1107
|
+
exports.everyU = everyU;
|
|
1108
|
+
exports.every = every;
|
|
1109
|
+
exports.someU = someU;
|
|
1110
|
+
exports.some = some;
|
|
1111
|
+
exports.join = join;
|
|
1112
|
+
exports.concat = concat;
|
|
1113
|
+
exports.concatOrJoin = concatOrJoin;
|
|
1114
|
+
exports.keepSharedU = keepSharedU;
|
|
1115
|
+
exports.keepShared = keepShared;
|
|
1116
|
+
exports.keepMapU = keepMapU;
|
|
1117
|
+
exports.keepMap = keepMap;
|
|
1118
|
+
exports.partitionSharedU = partitionSharedU;
|
|
1119
|
+
exports.partitionShared = partitionShared;
|
|
1120
|
+
exports.lengthNode = lengthNode;
|
|
1121
|
+
exports.size = size;
|
|
1122
|
+
exports.toList = toList;
|
|
1123
|
+
exports.checkInvariantInternal = checkInvariantInternal;
|
|
1124
|
+
exports.fillArray = fillArray;
|
|
1125
|
+
exports.toArray = toArray;
|
|
1126
|
+
exports.keysToArray = keysToArray;
|
|
1127
|
+
exports.valuesToArray = valuesToArray;
|
|
1128
|
+
exports.fromSortedArrayAux = fromSortedArrayAux;
|
|
1129
|
+
exports.fromSortedArrayRevAux = fromSortedArrayRevAux;
|
|
1130
|
+
exports.fromSortedArrayUnsafe = fromSortedArrayUnsafe;
|
|
1131
|
+
exports.cmpU = cmpU;
|
|
1132
|
+
exports.cmp = cmp;
|
|
1133
|
+
exports.eqU = eqU;
|
|
1134
|
+
exports.eq = eq;
|
|
1135
|
+
exports.get = get;
|
|
1136
|
+
exports.getUndefined = getUndefined;
|
|
1137
|
+
exports.getWithDefault = getWithDefault;
|
|
1138
|
+
exports.getExn = getExn;
|
|
1139
|
+
exports.has = has;
|
|
1140
|
+
exports.fromArray = fromArray;
|
|
1141
|
+
exports.updateMutate = updateMutate;
|
|
1142
|
+
exports.balMutate = balMutate;
|
|
1143
|
+
exports.removeMinAuxWithRootMutate = removeMinAuxWithRootMutate;
|
|
1144
|
+
/* No side effect */
|