@tellahq/rescript 10.1.4-republish-2 → 10.1.4-republish-3
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/darwin/bsb_helper.exe +0 -0
- package/darwin/bsc.exe +0 -0
- package/darwin/ninja.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.exe +0 -0
- package/darwinarm64/rescript.exe +0 -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 +316 -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_promise2.cmi +0 -0
- package/lib/ocaml/js_promise2.cmt +0 -0
- package/lib/ocaml/js_promise2.res +58 -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.res +40 -0
- package/lib/ocaml/jsxDOM.cmi +0 -0
- package/lib/ocaml/jsxDOM.cmt +0 -0
- package/lib/ocaml/jsxDOM.res +620 -0
- package/lib/ocaml/jsxDOMStyle.cmi +0 -0
- package/lib/ocaml/jsxDOMStyle.cmt +0 -0
- package/lib/ocaml/jsxDOMStyle.ml +781 -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/jsxPPXReactSupport.cmi +0 -0
- package/lib/ocaml/jsxPPXReactSupport.cmt +0 -0
- package/lib/ocaml/jsxPPXReactSupport.res +48 -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 +75 -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.exe +0 -0
- package/linux/rescript.exe +0 -0
- package/ninja.COPYING +202 -0
- package/package.json +1 -1
- package/vendor/ninja.tar.gz +0 -0
- package/win32/bsb_helper.exe +0 -0
- package/win32/bsc.exe +0 -0
- package/win32/ninja.exe +0 -0
- package/win32/refmt.exe +0 -0
- package/win32/rescript.exe +0 -0
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# 5 "others/map.cppo.ml"
|
|
2
|
+
type key = int
|
|
3
|
+
module I = Belt_internalMapInt
|
|
4
|
+
|
|
5
|
+
# 11 "others/map.cppo.ml"
|
|
6
|
+
module N = Belt_internalAVLtree
|
|
7
|
+
module A = Belt_Array
|
|
8
|
+
|
|
9
|
+
type 'a t = (key, 'a) N.t
|
|
10
|
+
|
|
11
|
+
let empty = None
|
|
12
|
+
let isEmpty = N.isEmpty
|
|
13
|
+
(* let singleton = N.singleton *)
|
|
14
|
+
|
|
15
|
+
let minKey = N.minKey
|
|
16
|
+
let minKeyUndefined = N.minKeyUndefined
|
|
17
|
+
let maxKey = N.maxKey
|
|
18
|
+
let maxKeyUndefined = N.maxKeyUndefined
|
|
19
|
+
let minimum = N.minimum
|
|
20
|
+
let minUndefined = N.minUndefined
|
|
21
|
+
let maximum = N.maximum
|
|
22
|
+
let maxUndefined = N.maxUndefined
|
|
23
|
+
let forEachU = N.forEachU
|
|
24
|
+
let forEach = N.forEach
|
|
25
|
+
let mapU = N.mapU
|
|
26
|
+
let map = N.map
|
|
27
|
+
let mapWithKeyU = N.mapWithKeyU
|
|
28
|
+
let mapWithKey = N.mapWithKey
|
|
29
|
+
let reduceU = N.reduceU
|
|
30
|
+
let reduce = N.reduce
|
|
31
|
+
let everyU = N.everyU
|
|
32
|
+
let every = N.every
|
|
33
|
+
let someU = N.someU
|
|
34
|
+
let some = N.some
|
|
35
|
+
let keepU = N.keepSharedU
|
|
36
|
+
let keep = N.keepShared
|
|
37
|
+
let partitionU = N.partitionSharedU
|
|
38
|
+
let partition = N.partitionShared
|
|
39
|
+
let size = N.size
|
|
40
|
+
let toList = N.toList
|
|
41
|
+
let toArray = N.toArray
|
|
42
|
+
let keysToArray = N.keysToArray
|
|
43
|
+
let valuesToArray = N.valuesToArray
|
|
44
|
+
let checkInvariantInternal = N.checkInvariantInternal
|
|
45
|
+
|
|
46
|
+
let rec set t (newK : key) (newD : _) =
|
|
47
|
+
match t with
|
|
48
|
+
| None ->
|
|
49
|
+
N.singleton newK newD
|
|
50
|
+
| Some n ->
|
|
51
|
+
let k = n.N.key in
|
|
52
|
+
if newK = k then
|
|
53
|
+
Some (N.updateValue n newD)
|
|
54
|
+
else
|
|
55
|
+
let v = n.N.value in
|
|
56
|
+
if newK < k then
|
|
57
|
+
N.bal (set n.N.left newK newD) k v n.N.right
|
|
58
|
+
else
|
|
59
|
+
N.bal n.N.left k v (set n.N.right newK newD)
|
|
60
|
+
|
|
61
|
+
let rec updateU t (x : key) f =
|
|
62
|
+
match t with
|
|
63
|
+
| None ->
|
|
64
|
+
begin match f None [@bs] with
|
|
65
|
+
| None -> t
|
|
66
|
+
| Some data ->
|
|
67
|
+
N.singleton x data
|
|
68
|
+
end
|
|
69
|
+
| Some n ->
|
|
70
|
+
let k = n.N.key in
|
|
71
|
+
if x = k then
|
|
72
|
+
begin match f (Some n.N.value) [@bs] with
|
|
73
|
+
| None ->
|
|
74
|
+
let {N.left = l; right = r } = n in
|
|
75
|
+
begin match l, r with
|
|
76
|
+
| None, _ -> r
|
|
77
|
+
| _, None -> l
|
|
78
|
+
| _, Some rn ->
|
|
79
|
+
let kr, vr = ref rn.N.key, ref rn.N.value in
|
|
80
|
+
let r = N.removeMinAuxWithRef rn kr vr in
|
|
81
|
+
N.bal l kr.contents vr.contents r
|
|
82
|
+
end
|
|
83
|
+
| Some data -> Some (N.updateValue n data )
|
|
84
|
+
end
|
|
85
|
+
else
|
|
86
|
+
let {N.left = l; right = r; value = v} = n in
|
|
87
|
+
if x < k then
|
|
88
|
+
let ll = (updateU l x f) in
|
|
89
|
+
if l == ll then t
|
|
90
|
+
else N.bal ll k v r
|
|
91
|
+
else
|
|
92
|
+
let rr = (updateU r x f) in
|
|
93
|
+
if r == rr then t
|
|
94
|
+
else N.bal l k v rr
|
|
95
|
+
|
|
96
|
+
let update t x f = updateU t x (fun[@bs] a -> f a)
|
|
97
|
+
|
|
98
|
+
let rec removeAux n (x : key) =
|
|
99
|
+
let {N.left = l; key = v; right = r} = n in
|
|
100
|
+
if x = v then
|
|
101
|
+
match l, r with
|
|
102
|
+
| None, _ -> r
|
|
103
|
+
| _, None -> l
|
|
104
|
+
| _, Some rn ->
|
|
105
|
+
let kr, vr = ref rn.N.key, ref rn.N.value in
|
|
106
|
+
let r = N.removeMinAuxWithRef rn kr vr in
|
|
107
|
+
N.bal l kr.contents vr.contents r
|
|
108
|
+
else if x < v then
|
|
109
|
+
match l with
|
|
110
|
+
| None -> Some n
|
|
111
|
+
| Some left ->
|
|
112
|
+
let ll = removeAux left x in
|
|
113
|
+
if ll == l then Some n
|
|
114
|
+
else N.(bal ll v n.value r)
|
|
115
|
+
else
|
|
116
|
+
match r with
|
|
117
|
+
| None -> Some n
|
|
118
|
+
| Some right ->
|
|
119
|
+
let rr = removeAux right x in
|
|
120
|
+
N.bal l v n.N.value rr
|
|
121
|
+
|
|
122
|
+
let remove n x =
|
|
123
|
+
match n with
|
|
124
|
+
| None -> None
|
|
125
|
+
| Some n -> removeAux n x
|
|
126
|
+
|
|
127
|
+
let rec removeMany0 t xs i len =
|
|
128
|
+
if i < len then
|
|
129
|
+
let ele = A.getUnsafe xs i in
|
|
130
|
+
let u = removeAux t ele in
|
|
131
|
+
match u with
|
|
132
|
+
| None -> u
|
|
133
|
+
| Some t -> removeMany0 t xs (i + 1) len
|
|
134
|
+
else
|
|
135
|
+
Some t
|
|
136
|
+
|
|
137
|
+
let removeMany t keys =
|
|
138
|
+
let len = A.length keys in
|
|
139
|
+
match t with
|
|
140
|
+
| None -> None
|
|
141
|
+
| Some t -> removeMany0 t keys 0 len
|
|
142
|
+
|
|
143
|
+
let findFirstByU = N.findFirstByU
|
|
144
|
+
let findFirstBy = N.findFirstBy
|
|
145
|
+
|
|
146
|
+
let mergeMany h arr =
|
|
147
|
+
let len = A.length arr in
|
|
148
|
+
let v = ref h in
|
|
149
|
+
for i = 0 to len - 1 do
|
|
150
|
+
let key,value = A.getUnsafe arr i in
|
|
151
|
+
v.contents<- set v.contents key value
|
|
152
|
+
done ;
|
|
153
|
+
v.contents
|
|
154
|
+
|
|
155
|
+
(* let mergeArray = mergeMany *)
|
|
156
|
+
|
|
157
|
+
let has = I.has
|
|
158
|
+
let cmpU = I.cmpU
|
|
159
|
+
let cmp = I.cmp
|
|
160
|
+
let eqU = I.eqU
|
|
161
|
+
let eq = I.eq
|
|
162
|
+
let get = I.get
|
|
163
|
+
let getUndefined = I.getUndefined
|
|
164
|
+
let getWithDefault = I.getWithDefault
|
|
165
|
+
let getExn = I.getExn
|
|
166
|
+
let split = I.split
|
|
167
|
+
let mergeU = I.mergeU
|
|
168
|
+
let merge = I.merge
|
|
169
|
+
let fromArray = I.fromArray
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
# 4 "others/map.cppo.mli"
|
|
2
|
+
type key = int
|
|
3
|
+
# 8 "others/map.cppo.mli"
|
|
4
|
+
type 'value t
|
|
5
|
+
(** The type of maps from type `key` to type `'value`. *)
|
|
6
|
+
|
|
7
|
+
val empty: 'v t
|
|
8
|
+
|
|
9
|
+
val isEmpty: 'v t -> bool
|
|
10
|
+
|
|
11
|
+
val has: 'v t -> key -> bool
|
|
12
|
+
|
|
13
|
+
val cmpU: 'v t -> 'v t -> ('v -> 'v -> int [@bs]) -> int
|
|
14
|
+
val cmp: 'v t -> 'v t -> ('v -> 'v -> int) -> int
|
|
15
|
+
|
|
16
|
+
val eqU: 'v t -> 'v t -> ('v -> 'v -> bool [@bs]) -> bool
|
|
17
|
+
val eq: 'v t -> 'v t -> ('v -> 'v -> bool) -> bool
|
|
18
|
+
(**
|
|
19
|
+
`eq m1 m2` tests whether the maps `m1` and `m2` are
|
|
20
|
+
equal, that is, contain equal keys and associate them with
|
|
21
|
+
equal data.
|
|
22
|
+
*)
|
|
23
|
+
|
|
24
|
+
val findFirstByU : 'v t -> (key -> 'v -> bool [@bs]) -> (key * 'v) option
|
|
25
|
+
val findFirstBy : 'v t -> (key -> 'v -> bool) -> (key * 'v) option
|
|
26
|
+
(**
|
|
27
|
+
`findFirstBy m p` uses funcion `f` to find the first key value pair
|
|
28
|
+
to match predicate `p`.
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
let s0 = fromArray ~id:(module IntCmp) [|4,"4";1,"1";2,"2,"3""|];;
|
|
32
|
+
findFirstBy s0 (fun k v -> k = 4 ) = option (4, "4");;
|
|
33
|
+
```
|
|
34
|
+
*)
|
|
35
|
+
|
|
36
|
+
val forEachU: 'v t -> (key -> 'v -> unit [@bs]) -> unit
|
|
37
|
+
val forEach: 'v t -> (key -> 'v -> unit) -> unit
|
|
38
|
+
(**
|
|
39
|
+
`forEach m f` applies `f` to all bindings in map `m`.
|
|
40
|
+
`f` receives the key as first argument, and the associated value
|
|
41
|
+
as second argument. The bindings are passed to `f` in increasing
|
|
42
|
+
order with respect to the ordering over the type of the keys.
|
|
43
|
+
*)
|
|
44
|
+
|
|
45
|
+
val reduceU: 'v t -> 'v2 -> ('v2 -> key -> 'v -> 'v2 [@bs]) -> 'v2
|
|
46
|
+
val reduce: 'v t -> 'v2 -> ('v2 -> key -> 'v -> 'v2) -> 'v2
|
|
47
|
+
(**
|
|
48
|
+
`reduce m a f` computes `(f kN dN ... (f k1 d1 a)...)`,
|
|
49
|
+
where `k1 ... kN` are the keys of all bindings in `m`
|
|
50
|
+
(in increasing order), and `d1 ... dN` are the associated data.
|
|
51
|
+
*)
|
|
52
|
+
|
|
53
|
+
val everyU: 'v t -> (key -> 'v -> bool [@bs]) -> bool
|
|
54
|
+
val every: 'v t -> (key -> 'v -> bool) -> bool
|
|
55
|
+
(** `every m p` checks if all the bindings of the map
|
|
56
|
+
satisfy the predicate `p`. Order unspecified *)
|
|
57
|
+
|
|
58
|
+
val someU: 'v t -> (key -> 'v -> bool [@bs]) -> bool
|
|
59
|
+
val some: 'v t -> (key -> 'v -> bool) -> bool
|
|
60
|
+
(** `some m p` checks if at least one binding of the map
|
|
61
|
+
satisfy the predicate `p`. Order unspecified *)
|
|
62
|
+
|
|
63
|
+
val size: 'v t -> int
|
|
64
|
+
|
|
65
|
+
val toList: 'v t -> (key * 'v) list
|
|
66
|
+
(** In increasing order. *)
|
|
67
|
+
|
|
68
|
+
val toArray: 'v t -> (key * 'v) array
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
val fromArray: (key * 'v) array -> 'v t
|
|
72
|
+
|
|
73
|
+
val keysToArray: 'v t -> key array
|
|
74
|
+
|
|
75
|
+
val valuesToArray: 'v t -> 'v array
|
|
76
|
+
|
|
77
|
+
val minKey: _ t -> key option
|
|
78
|
+
|
|
79
|
+
val minKeyUndefined: _ t -> key Js.undefined
|
|
80
|
+
|
|
81
|
+
val maxKey: _ t -> key option
|
|
82
|
+
|
|
83
|
+
val maxKeyUndefined: _ t -> key Js.undefined
|
|
84
|
+
|
|
85
|
+
val minimum: 'v t -> (key * 'v) option
|
|
86
|
+
|
|
87
|
+
val minUndefined: 'v t -> (key * 'v) Js.undefined
|
|
88
|
+
|
|
89
|
+
val maximum: 'v t -> (key * 'v) option
|
|
90
|
+
|
|
91
|
+
val maxUndefined: 'v t -> (key * 'v) Js.undefined
|
|
92
|
+
|
|
93
|
+
val get: 'v t -> key -> 'v option
|
|
94
|
+
|
|
95
|
+
val getUndefined: 'v t -> key -> 'v Js.undefined
|
|
96
|
+
|
|
97
|
+
val getWithDefault: 'v t -> key -> 'v -> 'v
|
|
98
|
+
|
|
99
|
+
val getExn: 'v t -> key -> 'v
|
|
100
|
+
|
|
101
|
+
val checkInvariantInternal: _ t -> unit
|
|
102
|
+
(**
|
|
103
|
+
**raise** when invariant is not held
|
|
104
|
+
*)
|
|
105
|
+
|
|
106
|
+
val remove: 'v t -> key -> 'v t
|
|
107
|
+
(** `remove m x` returns a map containing the same bindings as
|
|
108
|
+
`m`, except for `x` which is unbound in the returned map. *)
|
|
109
|
+
|
|
110
|
+
val removeMany: 'v t -> key array -> 'v t
|
|
111
|
+
|
|
112
|
+
val set: 'v t -> key -> 'v -> 'v t
|
|
113
|
+
(**
|
|
114
|
+
`set m x y` returns a map containing the same bindings as
|
|
115
|
+
`m`, plus a binding of `x` to `y`. If `x` was already bound
|
|
116
|
+
in `m`, its previous binding disappears.
|
|
117
|
+
*)
|
|
118
|
+
|
|
119
|
+
val updateU: 'v t -> key -> ('v option -> 'v option [@bs]) -> 'v t
|
|
120
|
+
val update: 'v t -> key -> ('v option -> 'v option) -> 'v t
|
|
121
|
+
|
|
122
|
+
val mergeU:
|
|
123
|
+
'v t -> 'v2 t ->
|
|
124
|
+
(key -> 'v option -> 'v2 option -> 'c option [@bs]) ->
|
|
125
|
+
'c t
|
|
126
|
+
val merge:
|
|
127
|
+
'v t -> 'v2 t ->
|
|
128
|
+
(key -> 'v option -> 'v2 option -> 'c option) ->
|
|
129
|
+
'c t
|
|
130
|
+
(**
|
|
131
|
+
`merge m1 m2 f` computes a map whose keys is a subset of keys of `m1`
|
|
132
|
+
and of `m2`. The presence of each such binding, and the corresponding
|
|
133
|
+
value, is determined with the function `f`.
|
|
134
|
+
*)
|
|
135
|
+
|
|
136
|
+
val mergeMany: 'v t -> (key * 'v) array -> 'v t
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
val keepU:
|
|
140
|
+
'v t ->
|
|
141
|
+
(key -> 'v -> bool [@bs]) ->
|
|
142
|
+
'v t
|
|
143
|
+
val keep:
|
|
144
|
+
'v t ->
|
|
145
|
+
(key -> 'v -> bool) ->
|
|
146
|
+
'v t
|
|
147
|
+
(** `keep m p` returns the map with all the bindings in `m`
|
|
148
|
+
that satisfy predicate `p`. *)
|
|
149
|
+
|
|
150
|
+
val partitionU:
|
|
151
|
+
'v t ->
|
|
152
|
+
(key -> 'v -> bool [@bs]) ->
|
|
153
|
+
'v t * 'v t
|
|
154
|
+
val partition:
|
|
155
|
+
'v t ->
|
|
156
|
+
(key -> 'v -> bool) ->
|
|
157
|
+
'v t * 'v t
|
|
158
|
+
(**
|
|
159
|
+
`partition m p` returns a pair of maps `(m1, m2)`, where
|
|
160
|
+
`m1` contains all the bindings of `s` that satisfy the
|
|
161
|
+
predicate `p`, and `m2` is the map with all the bindings of
|
|
162
|
+
`s` that do not satisfy `p`.
|
|
163
|
+
*)
|
|
164
|
+
|
|
165
|
+
val split: key -> 'v t -> 'v t * 'v option * 'v t
|
|
166
|
+
(**
|
|
167
|
+
`split x m` returns a triple `(l, data, r)`, where
|
|
168
|
+
`l` is the map with all the bindings of `m` whose key
|
|
169
|
+
is strictly less than `x`;
|
|
170
|
+
`r` is the map with all the bindings of `m` whose key
|
|
171
|
+
is strictly greater than `x`;
|
|
172
|
+
`data` is `None` if `m` contains no binding for `x`,
|
|
173
|
+
or `Some v` if `m` binds `v` to `x`.
|
|
174
|
+
*)
|
|
175
|
+
|
|
176
|
+
val mapU: 'v t -> ('v -> 'v2 [@bs]) -> 'v2 t
|
|
177
|
+
val map: 'v t -> ('v -> 'v2) -> 'v2 t
|
|
178
|
+
(**
|
|
179
|
+
`map m f` returns a map with same domain as `m`, where the
|
|
180
|
+
associated value `a` of all bindings of `m` has been
|
|
181
|
+
replaced by the result of the application of `f` to `a`.
|
|
182
|
+
The bindings are passed to `f` in increasing order
|
|
183
|
+
with respect to the ordering over the type of the keys.
|
|
184
|
+
*)
|
|
185
|
+
|
|
186
|
+
val mapWithKeyU: 'v t -> (key -> 'v -> 'v2 [@bs]) -> 'v2 t
|
|
187
|
+
val mapWithKey: 'v t -> (key -> 'v -> 'v2) -> 'v2 t
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# 2 "others/map.cppo.ml"
|
|
2
|
+
type key = string
|
|
3
|
+
module I = Belt_internalMapString
|
|
4
|
+
|
|
5
|
+
# 11 "others/map.cppo.ml"
|
|
6
|
+
module N = Belt_internalAVLtree
|
|
7
|
+
module A = Belt_Array
|
|
8
|
+
|
|
9
|
+
type 'a t = (key, 'a) N.t
|
|
10
|
+
|
|
11
|
+
let empty = None
|
|
12
|
+
let isEmpty = N.isEmpty
|
|
13
|
+
(* let singleton = N.singleton *)
|
|
14
|
+
|
|
15
|
+
let minKey = N.minKey
|
|
16
|
+
let minKeyUndefined = N.minKeyUndefined
|
|
17
|
+
let maxKey = N.maxKey
|
|
18
|
+
let maxKeyUndefined = N.maxKeyUndefined
|
|
19
|
+
let minimum = N.minimum
|
|
20
|
+
let minUndefined = N.minUndefined
|
|
21
|
+
let maximum = N.maximum
|
|
22
|
+
let maxUndefined = N.maxUndefined
|
|
23
|
+
let forEachU = N.forEachU
|
|
24
|
+
let forEach = N.forEach
|
|
25
|
+
let mapU = N.mapU
|
|
26
|
+
let map = N.map
|
|
27
|
+
let mapWithKeyU = N.mapWithKeyU
|
|
28
|
+
let mapWithKey = N.mapWithKey
|
|
29
|
+
let reduceU = N.reduceU
|
|
30
|
+
let reduce = N.reduce
|
|
31
|
+
let everyU = N.everyU
|
|
32
|
+
let every = N.every
|
|
33
|
+
let someU = N.someU
|
|
34
|
+
let some = N.some
|
|
35
|
+
let keepU = N.keepSharedU
|
|
36
|
+
let keep = N.keepShared
|
|
37
|
+
let partitionU = N.partitionSharedU
|
|
38
|
+
let partition = N.partitionShared
|
|
39
|
+
let size = N.size
|
|
40
|
+
let toList = N.toList
|
|
41
|
+
let toArray = N.toArray
|
|
42
|
+
let keysToArray = N.keysToArray
|
|
43
|
+
let valuesToArray = N.valuesToArray
|
|
44
|
+
let checkInvariantInternal = N.checkInvariantInternal
|
|
45
|
+
|
|
46
|
+
let rec set t (newK : key) (newD : _) =
|
|
47
|
+
match t with
|
|
48
|
+
| None ->
|
|
49
|
+
N.singleton newK newD
|
|
50
|
+
| Some n ->
|
|
51
|
+
let k = n.N.key in
|
|
52
|
+
if newK = k then
|
|
53
|
+
Some (N.updateValue n newD)
|
|
54
|
+
else
|
|
55
|
+
let v = n.N.value in
|
|
56
|
+
if newK < k then
|
|
57
|
+
N.bal (set n.N.left newK newD) k v n.N.right
|
|
58
|
+
else
|
|
59
|
+
N.bal n.N.left k v (set n.N.right newK newD)
|
|
60
|
+
|
|
61
|
+
let rec updateU t (x : key) f =
|
|
62
|
+
match t with
|
|
63
|
+
| None ->
|
|
64
|
+
begin match f None [@bs] with
|
|
65
|
+
| None -> t
|
|
66
|
+
| Some data ->
|
|
67
|
+
N.singleton x data
|
|
68
|
+
end
|
|
69
|
+
| Some n ->
|
|
70
|
+
let k = n.N.key in
|
|
71
|
+
if x = k then
|
|
72
|
+
begin match f (Some n.N.value) [@bs] with
|
|
73
|
+
| None ->
|
|
74
|
+
let {N.left = l; right = r } = n in
|
|
75
|
+
begin match l, r with
|
|
76
|
+
| None, _ -> r
|
|
77
|
+
| _, None -> l
|
|
78
|
+
| _, Some rn ->
|
|
79
|
+
let kr, vr = ref rn.N.key, ref rn.N.value in
|
|
80
|
+
let r = N.removeMinAuxWithRef rn kr vr in
|
|
81
|
+
N.bal l kr.contents vr.contents r
|
|
82
|
+
end
|
|
83
|
+
| Some data -> Some (N.updateValue n data )
|
|
84
|
+
end
|
|
85
|
+
else
|
|
86
|
+
let {N.left = l; right = r; value = v} = n in
|
|
87
|
+
if x < k then
|
|
88
|
+
let ll = (updateU l x f) in
|
|
89
|
+
if l == ll then t
|
|
90
|
+
else N.bal ll k v r
|
|
91
|
+
else
|
|
92
|
+
let rr = (updateU r x f) in
|
|
93
|
+
if r == rr then t
|
|
94
|
+
else N.bal l k v rr
|
|
95
|
+
|
|
96
|
+
let update t x f = updateU t x (fun[@bs] a -> f a)
|
|
97
|
+
|
|
98
|
+
let rec removeAux n (x : key) =
|
|
99
|
+
let {N.left = l; key = v; right = r} = n in
|
|
100
|
+
if x = v then
|
|
101
|
+
match l, r with
|
|
102
|
+
| None, _ -> r
|
|
103
|
+
| _, None -> l
|
|
104
|
+
| _, Some rn ->
|
|
105
|
+
let kr, vr = ref rn.N.key, ref rn.N.value in
|
|
106
|
+
let r = N.removeMinAuxWithRef rn kr vr in
|
|
107
|
+
N.bal l kr.contents vr.contents r
|
|
108
|
+
else if x < v then
|
|
109
|
+
match l with
|
|
110
|
+
| None -> Some n
|
|
111
|
+
| Some left ->
|
|
112
|
+
let ll = removeAux left x in
|
|
113
|
+
if ll == l then Some n
|
|
114
|
+
else N.(bal ll v n.value r)
|
|
115
|
+
else
|
|
116
|
+
match r with
|
|
117
|
+
| None -> Some n
|
|
118
|
+
| Some right ->
|
|
119
|
+
let rr = removeAux right x in
|
|
120
|
+
N.bal l v n.N.value rr
|
|
121
|
+
|
|
122
|
+
let remove n x =
|
|
123
|
+
match n with
|
|
124
|
+
| None -> None
|
|
125
|
+
| Some n -> removeAux n x
|
|
126
|
+
|
|
127
|
+
let rec removeMany0 t xs i len =
|
|
128
|
+
if i < len then
|
|
129
|
+
let ele = A.getUnsafe xs i in
|
|
130
|
+
let u = removeAux t ele in
|
|
131
|
+
match u with
|
|
132
|
+
| None -> u
|
|
133
|
+
| Some t -> removeMany0 t xs (i + 1) len
|
|
134
|
+
else
|
|
135
|
+
Some t
|
|
136
|
+
|
|
137
|
+
let removeMany t keys =
|
|
138
|
+
let len = A.length keys in
|
|
139
|
+
match t with
|
|
140
|
+
| None -> None
|
|
141
|
+
| Some t -> removeMany0 t keys 0 len
|
|
142
|
+
|
|
143
|
+
let findFirstByU = N.findFirstByU
|
|
144
|
+
let findFirstBy = N.findFirstBy
|
|
145
|
+
|
|
146
|
+
let mergeMany h arr =
|
|
147
|
+
let len = A.length arr in
|
|
148
|
+
let v = ref h in
|
|
149
|
+
for i = 0 to len - 1 do
|
|
150
|
+
let key,value = A.getUnsafe arr i in
|
|
151
|
+
v.contents<- set v.contents key value
|
|
152
|
+
done ;
|
|
153
|
+
v.contents
|
|
154
|
+
|
|
155
|
+
(* let mergeArray = mergeMany *)
|
|
156
|
+
|
|
157
|
+
let has = I.has
|
|
158
|
+
let cmpU = I.cmpU
|
|
159
|
+
let cmp = I.cmp
|
|
160
|
+
let eqU = I.eqU
|
|
161
|
+
let eq = I.eq
|
|
162
|
+
let get = I.get
|
|
163
|
+
let getUndefined = I.getUndefined
|
|
164
|
+
let getWithDefault = I.getWithDefault
|
|
165
|
+
let getExn = I.getExn
|
|
166
|
+
let split = I.split
|
|
167
|
+
let mergeU = I.mergeU
|
|
168
|
+
let merge = I.merge
|
|
169
|
+
let fromArray = I.fromArray
|