@tellahq/rescript 10.1.4-republish-1 → 10.1.4-republish-2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/darwinarm64/ninja.exe +0 -0
- package/package.json +1 -1
- 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 +0 -359
- package/lib/ocaml/arg.mli +0 -185
- 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 +0 -307
- package/lib/ocaml/array.mli +0 -275
- 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 +0 -307
- package/lib/ocaml/arrayLabels.mli +0 -276
- package/lib/ocaml/belt.cmi +0 -0
- package/lib/ocaml/belt.cmt +0 -0
- package/lib/ocaml/belt.ml +0 -352
- 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 +0 -525
- package/lib/ocaml/belt_Array.mli +0 -707
- 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 +0 -50
- package/lib/ocaml/belt_Float.mli +0 -106
- 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 +0 -226
- package/lib/ocaml/belt_HashMap.mli +0 -436
- 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 +0 -206
- package/lib/ocaml/belt_HashMapInt.mli +0 -50
- 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 +0 -206
- package/lib/ocaml/belt_HashMapString.mli +0 -50
- 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 +0 -196
- package/lib/ocaml/belt_HashSet.mli +0 -125
- 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 +0 -155
- package/lib/ocaml/belt_HashSetInt.mli +0 -74
- 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 +0 -156
- package/lib/ocaml/belt_HashSetString.mli +0 -74
- 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 +0 -133
- package/lib/ocaml/belt_Id.mli +0 -171
- 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 +0 -50
- package/lib/ocaml/belt_Int.mli +0 -103
- 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 +0 -803
- package/lib/ocaml/belt_List.mli +0 -844
- 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 +0 -170
- package/lib/ocaml/belt_Map.mli +0 -496
- 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 +0 -278
- package/lib/ocaml/belt_MapDict.mli +0 -268
- 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 +0 -169
- package/lib/ocaml/belt_MapInt.mli +0 -187
- 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 +0 -169
- package/lib/ocaml/belt_MapString.mli +0 -187
- 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 +0 -241
- package/lib/ocaml/belt_MutableMap.mli +0 -145
- 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 +0 -172
- package/lib/ocaml/belt_MutableMapInt.mli +0 -135
- 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 +0 -172
- package/lib/ocaml/belt_MutableMapString.mli +0 -135
- 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 +0 -222
- package/lib/ocaml/belt_MutableQueue.mli +0 -116
- 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 +0 -371
- package/lib/ocaml/belt_MutableSet.mli +0 -617
- 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 +0 -342
- package/lib/ocaml/belt_MutableSetInt.mli +0 -124
- 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 +0 -342
- package/lib/ocaml/belt_MutableSetString.mli +0 -124
- 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 +0 -106
- package/lib/ocaml/belt_MutableStack.mli +0 -63
- 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 +0 -93
- package/lib/ocaml/belt_Option.mli +0 -270
- 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 +0 -76
- package/lib/ocaml/belt_Range.mli +0 -114
- 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 +0 -75
- package/lib/ocaml/belt_Result.mli +0 -205
- 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 +0 -205
- package/lib/ocaml/belt_Set.cppo.mli +0 -153
- package/lib/ocaml/belt_Set.ml +0 -164
- package/lib/ocaml/belt_Set.mli +0 -523
- 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 +0 -237
- package/lib/ocaml/belt_SetDict.mli +0 -567
- 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 +0 -201
- package/lib/ocaml/belt_SetInt.mli +0 -151
- 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 +0 -201
- package/lib/ocaml/belt_SetString.mli +0 -151
- 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 +0 -322
- package/lib/ocaml/belt_SortArray.mli +0 -146
- 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 +0 -263
- package/lib/ocaml/belt_SortArrayInt.mli +0 -93
- 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 +0 -263
- package/lib/ocaml/belt_SortArrayString.mli +0 -93
- package/lib/ocaml/belt_internalAVLset.cmt +0 -0
- package/lib/ocaml/belt_internalAVLset.cmti +0 -0
- package/lib/ocaml/belt_internalAVLset.ml +0 -665
- package/lib/ocaml/belt_internalAVLset.mli +0 -124
- package/lib/ocaml/belt_internalAVLtree.cmt +0 -0
- package/lib/ocaml/belt_internalAVLtree.cmti +0 -0
- package/lib/ocaml/belt_internalAVLtree.ml +0 -762
- package/lib/ocaml/belt_internalAVLtree.mli +0 -215
- package/lib/ocaml/belt_internalBuckets.cmt +0 -0
- package/lib/ocaml/belt_internalBuckets.cmti +0 -0
- package/lib/ocaml/belt_internalBuckets.ml +0 -218
- package/lib/ocaml/belt_internalBuckets.mli +0 -57
- package/lib/ocaml/belt_internalBucketsType.cmt +0 -0
- package/lib/ocaml/belt_internalBucketsType.cmti +0 -0
- package/lib/ocaml/belt_internalBucketsType.ml +0 -59
- package/lib/ocaml/belt_internalBucketsType.mli +0 -46
- package/lib/ocaml/belt_internalMapInt.cmt +0 -0
- package/lib/ocaml/belt_internalMapInt.ml +0 -227
- package/lib/ocaml/belt_internalMapString.cmt +0 -0
- package/lib/ocaml/belt_internalMapString.ml +0 -227
- package/lib/ocaml/belt_internalSetBuckets.cmt +0 -0
- package/lib/ocaml/belt_internalSetBuckets.cmti +0 -0
- package/lib/ocaml/belt_internalSetBuckets.ml +0 -157
- package/lib/ocaml/belt_internalSetBuckets.mli +0 -47
- package/lib/ocaml/belt_internalSetInt.cmt +0 -0
- package/lib/ocaml/belt_internalSetInt.ml +0 -129
- package/lib/ocaml/belt_internalSetString.cmt +0 -0
- package/lib/ocaml/belt_internalSetString.ml +0 -129
- package/lib/ocaml/belt_internals.cmti +0 -0
- package/lib/ocaml/belt_internals.mli +0 -79
- 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 +0 -250
- package/lib/ocaml/buffer.mli +0 -149
- 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 +0 -431
- package/lib/ocaml/bytes.mli +0 -430
- 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 +0 -428
- package/lib/ocaml/bytesLabels.mli +0 -276
- 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 +0 -20
- package/lib/ocaml/callback.mli +0 -34
- 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 +0 -89
- package/lib/ocaml/camlinternalLazy.mli +0 -27
- 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 +0 -21
- package/lib/ocaml/camlinternalMod.mli +0 -25
- 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 +0 -76
- package/lib/ocaml/char.mli +0 -72
- 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 +0 -87
- package/lib/ocaml/complex.mli +0 -86
- 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 +0 -66
- package/lib/ocaml/digest.mli +0 -68
- package/lib/ocaml/dom.cmi +0 -0
- package/lib/ocaml/dom.cmt +0 -0
- package/lib/ocaml/dom.ml +0 -296
- package/lib/ocaml/dom_storage.cmi +0 -0
- package/lib/ocaml/dom_storage.cmt +0 -0
- package/lib/ocaml/dom_storage.ml +0 -22
- package/lib/ocaml/dom_storage2.cmi +0 -0
- package/lib/ocaml/dom_storage2.cmt +0 -0
- package/lib/ocaml/dom_storage2.ml +0 -11
- 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 +0 -233
- package/lib/ocaml/filename.mli +0 -134
- 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 +0 -201
- package/lib/ocaml/genlex.mli +0 -73
- package/lib/ocaml/hashmap.cppo.ml +0 -214
- package/lib/ocaml/hashmap.cppo.mli +0 -54
- package/lib/ocaml/hashset.cppo.ml +0 -165
- package/lib/ocaml/hashset.cppo.mli +0 -77
- 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 +0 -541
- package/lib/ocaml/hashtbl.mli +0 -411
- package/lib/ocaml/hashtblLabels.cmi +0 -0
- package/lib/ocaml/hashtblLabels.cmt +0 -0
- package/lib/ocaml/hashtblLabels.ml +0 -130
- 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 +0 -64
- package/lib/ocaml/int32.mli +0 -186
- 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 +0 -72
- package/lib/ocaml/int64.mli +0 -197
- package/lib/ocaml/internal_map.cppo.ml +0 -230
- package/lib/ocaml/internal_set.cppo.ml +0 -134
- package/lib/ocaml/js.cmi +0 -0
- package/lib/ocaml/js.cmt +0 -0
- package/lib/ocaml/js.ml +0 -316
- package/lib/ocaml/js_OO.cmi +0 -0
- package/lib/ocaml/js_OO.cmt +0 -0
- package/lib/ocaml/js_OO.ml +0 -180
- package/lib/ocaml/js_array.cmi +0 -0
- package/lib/ocaml/js_array.cmt +0 -0
- package/lib/ocaml/js_array.ml +0 -970
- package/lib/ocaml/js_array2.cmi +0 -0
- package/lib/ocaml/js_array2.cmt +0 -0
- package/lib/ocaml/js_array2.ml +0 -1065
- package/lib/ocaml/js_bigint.cmi +0 -0
- package/lib/ocaml/js_bigint.cmt +0 -0
- package/lib/ocaml/js_bigint.ml +0 -3
- 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 +0 -29
- package/lib/ocaml/js_cast.mli +0 -45
- package/lib/ocaml/js_console.cmi +0 -0
- package/lib/ocaml/js_console.cmt +0 -0
- package/lib/ocaml/js_console.ml +0 -51
- package/lib/ocaml/js_date.cmi +0 -0
- package/lib/ocaml/js_date.cmt +0 -0
- package/lib/ocaml/js_date.ml +0 -1263
- 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 +0 -114
- package/lib/ocaml/js_dict.mli +0 -152
- 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 +0 -102
- package/lib/ocaml/js_exn.mli +0 -79
- package/lib/ocaml/js_float.cmi +0 -0
- package/lib/ocaml/js_float.cmt +0 -0
- package/lib/ocaml/js_float.ml +0 -294
- package/lib/ocaml/js_global.cmi +0 -0
- package/lib/ocaml/js_global.cmt +0 -0
- package/lib/ocaml/js_global.ml +0 -185
- package/lib/ocaml/js_int.cmi +0 -0
- package/lib/ocaml/js_int.cmt +0 -0
- package/lib/ocaml/js_int.ml +0 -158
- 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 +0 -195
- package/lib/ocaml/js_json.mli +0 -244
- 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 +0 -174
- package/lib/ocaml/js_list.mli +0 -72
- package/lib/ocaml/js_map.cmi +0 -0
- package/lib/ocaml/js_map.cmt +0 -0
- package/lib/ocaml/js_map.ml +0 -3
- 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 +0 -50
- package/lib/ocaml/js_mapperRt.mli +0 -44
- package/lib/ocaml/js_math.cmi +0 -0
- package/lib/ocaml/js_math.cmt +0 -0
- package/lib/ocaml/js_math.ml +0 -626
- 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 +0 -57
- package/lib/ocaml/js_null.mli +0 -87
- 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 +0 -50
- package/lib/ocaml/js_null_undefined.mli +0 -85
- package/lib/ocaml/js_obj.cmi +0 -0
- package/lib/ocaml/js_obj.cmt +0 -0
- package/lib/ocaml/js_obj.ml +0 -100
- 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 +0 -203
- package/lib/ocaml/js_option.mli +0 -52
- package/lib/ocaml/js_promise.cmi +0 -0
- package/lib/ocaml/js_promise.cmt +0 -0
- package/lib/ocaml/js_promise.ml +0 -100
- package/lib/ocaml/js_promise2.cmi +0 -0
- package/lib/ocaml/js_promise2.cmt +0 -0
- package/lib/ocaml/js_promise2.res +0 -58
- package/lib/ocaml/js_re.cmi +0 -0
- package/lib/ocaml/js_re.cmt +0 -0
- package/lib/ocaml/js_re.ml +0 -184
- 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 +0 -28
- package/lib/ocaml/js_result.mli +0 -28
- package/lib/ocaml/js_set.cmi +0 -0
- package/lib/ocaml/js_set.cmt +0 -0
- package/lib/ocaml/js_set.ml +0 -3
- package/lib/ocaml/js_string.cmi +0 -0
- package/lib/ocaml/js_string.cmt +0 -0
- package/lib/ocaml/js_string.ml +0 -914
- package/lib/ocaml/js_string2.cmi +0 -0
- package/lib/ocaml/js_string2.cmt +0 -0
- package/lib/ocaml/js_string2.ml +0 -912
- 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 +0 -429
- package/lib/ocaml/js_typed_array.ml +0 -1405
- 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 +0 -296
- package/lib/ocaml/js_typed_array2.ml +0 -1269
- 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 +0 -118
- package/lib/ocaml/js_types.mli +0 -78
- 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 +0 -59
- package/lib/ocaml/js_undefined.mli +0 -92
- 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 +0 -143
- package/lib/ocaml/js_vector.mli +0 -92
- package/lib/ocaml/js_weakmap.cmi +0 -0
- package/lib/ocaml/js_weakmap.cmt +0 -0
- package/lib/ocaml/js_weakmap.ml +0 -3
- package/lib/ocaml/js_weakset.cmi +0 -0
- package/lib/ocaml/js_weakset.cmt +0 -0
- package/lib/ocaml/js_weakset.ml +0 -3
- package/lib/ocaml/jsx.cmi +0 -0
- package/lib/ocaml/jsx.cmt +0 -0
- package/lib/ocaml/jsx.res +0 -40
- package/lib/ocaml/jsxDOM.cmi +0 -0
- package/lib/ocaml/jsxDOM.cmt +0 -0
- package/lib/ocaml/jsxDOM.res +0 -620
- package/lib/ocaml/jsxDOMStyle.cmi +0 -0
- package/lib/ocaml/jsxDOMStyle.cmt +0 -0
- package/lib/ocaml/jsxDOMStyle.ml +0 -781
- package/lib/ocaml/jsxEvent.cmi +0 -0
- package/lib/ocaml/jsxEvent.cmt +0 -0
- package/lib/ocaml/jsxEvent.ml +0 -358
- package/lib/ocaml/jsxPPXReactSupport.cmi +0 -0
- package/lib/ocaml/jsxPPXReactSupport.cmt +0 -0
- package/lib/ocaml/jsxPPXReactSupport.res +0 -48
- 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 +0 -70
- package/lib/ocaml/lazy.mli +0 -95
- 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 +0 -230
- package/lib/ocaml/lexing.mli +0 -172
- 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 +0 -485
- package/lib/ocaml/list.mli +0 -347
- 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 +0 -485
- package/lib/ocaml/listLabels.mli +0 -353
- 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 +0 -174
- package/lib/ocaml/map.cppo.mli +0 -191
- package/lib/ocaml/map.ml +0 -480
- package/lib/ocaml/map.mli +0 -315
- package/lib/ocaml/mapLabels.cmi +0 -0
- package/lib/ocaml/mapLabels.cmt +0 -0
- package/lib/ocaml/mapLabels.ml +0 -480
- package/lib/ocaml/mapm.cppo.ml +0 -177
- package/lib/ocaml/mapm.cppo.mli +0 -138
- 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 +0 -22
- package/lib/ocaml/moreLabels.mli +0 -198
- package/lib/ocaml/node.cmi +0 -0
- package/lib/ocaml/node.cmt +0 -0
- package/lib/ocaml/node.ml +0 -84
- package/lib/ocaml/node_buffer.cmi +0 -0
- package/lib/ocaml/node_buffer.cmt +0 -0
- package/lib/ocaml/node_buffer.ml +0 -47
- 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 +0 -50
- package/lib/ocaml/node_fs.cmi +0 -0
- package/lib/ocaml/node_fs.cmt +0 -0
- package/lib/ocaml/node_fs.ml +0 -153
- package/lib/ocaml/node_module.cmi +0 -0
- package/lib/ocaml/node_module.cmt +0 -0
- package/lib/ocaml/node_module.ml +0 -29
- package/lib/ocaml/node_path.cmi +0 -0
- package/lib/ocaml/node_path.cmt +0 -0
- package/lib/ocaml/node_path.ml +0 -71
- 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 +0 -59
- package/lib/ocaml/node_process.mli +0 -48
- 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 +0 -29
- package/lib/ocaml/obj.mli +0 -62
- 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 +0 -212
- package/lib/ocaml/parsing.mli +0 -105
- 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 +0 -297
- package/lib/ocaml/pervasives.mli +0 -771
- 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 +0 -75
- package/lib/ocaml/printexc.mli +0 -57
- 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 +0 -132
- package/lib/ocaml/queue.mli +0 -82
- 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 +0 -273
- package/lib/ocaml/random.mli +0 -102
- 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 +0 -526
- package/lib/ocaml/set.mli +0 -266
- package/lib/ocaml/setLabels.cmi +0 -0
- package/lib/ocaml/setLabels.cmt +0 -0
- package/lib/ocaml/setLabels.ml +0 -526
- package/lib/ocaml/setm.cppo.ml +0 -346
- package/lib/ocaml/setm.cppo.mli +0 -126
- 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 +0 -267
- package/lib/ocaml/sort.cppo.mli +0 -96
- package/lib/ocaml/sort.ml +0 -99
- package/lib/ocaml/sort.mli +0 -44
- 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 +0 -44
- package/lib/ocaml/stack.mli +0 -63
- 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 +0 -24
- package/lib/ocaml/stdLabels.mli +0 -29
- 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 +0 -213
- package/lib/ocaml/stream.mli +0 -108
- 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 +0 -190
- package/lib/ocaml/string.mli +0 -286
- 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 +0 -190
- package/lib/ocaml/stringLabels.mli +0 -241
- 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 +0 -135
- package/lib/ocaml/sys.mli +0 -333
- 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 +0 -58
- package/lib/ocaml/uchar.mli +0 -98
package/lib/ocaml/belt_Float.ml
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
(* Copyright (C) 2017 Hongbo Zhang, Authors of ReScript
|
|
2
|
-
*
|
|
3
|
-
* This program is free software: you can redistribute it and/or modify
|
|
4
|
-
* it under the terms of the GNU Lesser General Public License as published by
|
|
5
|
-
* the Free Software Foundation, either version 3 of the License, or
|
|
6
|
-
* (at your option) any later version.
|
|
7
|
-
*
|
|
8
|
-
* In addition to the permissions granted to you by the LGPL, you may combine
|
|
9
|
-
* or link a "work that uses the Library" with a publicly distributed version
|
|
10
|
-
* of this file to produce a combined library or application, then distribute
|
|
11
|
-
* that combined work under the terms of your choosing, with no requirement
|
|
12
|
-
* to comply with the obligations normally placed on you by section 4 of the
|
|
13
|
-
* LGPL version 3 (or the corresponding section of a later version of the LGPL
|
|
14
|
-
* should you choose to use a later version).
|
|
15
|
-
*
|
|
16
|
-
* This program is distributed in the hope that it will be useful,
|
|
17
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
-
* GNU Lesser General Public License for more details.
|
|
20
|
-
*
|
|
21
|
-
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
-
* along with this program; if not, write to the Free Software
|
|
23
|
-
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *)
|
|
24
|
-
|
|
25
|
-
(** [`Belt.Float`]()
|
|
26
|
-
Utililites for Float
|
|
27
|
-
*)
|
|
28
|
-
|
|
29
|
-
external isNaN : float -> bool = "isNaN" [@@bs.val]
|
|
30
|
-
|
|
31
|
-
external toInt: float -> int = "%intoffloat"
|
|
32
|
-
|
|
33
|
-
external fromInt: int -> float = "%identity"
|
|
34
|
-
|
|
35
|
-
external fromString: string -> float = "parseFloat" [@@bs.val]
|
|
36
|
-
|
|
37
|
-
let fromString i =
|
|
38
|
-
match (fromString i) with
|
|
39
|
-
| i when isNaN i -> None
|
|
40
|
-
| i -> Some i
|
|
41
|
-
|
|
42
|
-
external toString: float -> string = "String" [@@bs.val]
|
|
43
|
-
|
|
44
|
-
external ( + ) : float -> float -> float = "%addfloat"
|
|
45
|
-
|
|
46
|
-
external ( - ) : float -> float -> float = "%subfloat"
|
|
47
|
-
|
|
48
|
-
external ( * ) : float -> float -> float = "%mulfloat"
|
|
49
|
-
|
|
50
|
-
external ( / ) : float -> float -> float = "%divfloat"
|
package/lib/ocaml/belt_Float.mli
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
(* Copyright (C) 2017 Authors of ReScript
|
|
2
|
-
*
|
|
3
|
-
* This program is free software: you can redistribute it and/or modify
|
|
4
|
-
* it under the terms of the GNU Lesser General Public License as published by
|
|
5
|
-
* the Free Software Foundation, either version 3 of the License, or
|
|
6
|
-
* (at your option) any later version.
|
|
7
|
-
*
|
|
8
|
-
* In addition to the permissions granted to you by the LGPL, you may combine
|
|
9
|
-
* or link a "work that uses the Library" with a publicly distributed version
|
|
10
|
-
* of this file to produce a combined library or application, then distribute
|
|
11
|
-
* that combined work under the terms of your choosing, with no requirement
|
|
12
|
-
* to comply with the obligations normally placed on you by section 4 of the
|
|
13
|
-
* LGPL version 3 (or the corresponding section of a later version of the LGPL
|
|
14
|
-
* should you choose to use a later version).
|
|
15
|
-
*
|
|
16
|
-
* This program is distributed in the hope that it will be useful,
|
|
17
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
-
* GNU Lesser General Public License for more details.
|
|
20
|
-
*
|
|
21
|
-
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
-
* along with this program; if not, write to the Free Software
|
|
23
|
-
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *)
|
|
24
|
-
|
|
25
|
-
(** This module includes convenience methods for handling `float` types. *)
|
|
26
|
-
|
|
27
|
-
external toInt: float -> int = "%intoffloat"
|
|
28
|
-
(**
|
|
29
|
-
Converts a given `float` to an `int`.
|
|
30
|
-
|
|
31
|
-
```res example
|
|
32
|
-
Js.log(Belt.Float.toInt(1.0) === 1) /* true */
|
|
33
|
-
```
|
|
34
|
-
*)
|
|
35
|
-
|
|
36
|
-
external fromInt: int -> float = "%identity"
|
|
37
|
-
(**
|
|
38
|
-
Converts a given `int` to a `float`.
|
|
39
|
-
|
|
40
|
-
```res example
|
|
41
|
-
Js.log(Belt.Float.fromInt(1) === 1.0) /* true */
|
|
42
|
-
```
|
|
43
|
-
*)
|
|
44
|
-
|
|
45
|
-
val fromString: string -> float option
|
|
46
|
-
(**
|
|
47
|
-
Converts a given `string` to a `float`. Returns `Some(float)` when the input is a number, `None` otherwise.
|
|
48
|
-
|
|
49
|
-
```res example
|
|
50
|
-
Js.log(Belt.Float.fromString("1.0") === Some(1.0)) /* true */
|
|
51
|
-
```
|
|
52
|
-
*)
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
external toString: float -> string = "String" [@@bs.val]
|
|
56
|
-
(**
|
|
57
|
-
Converts a given `float` to a `string`. Uses the JavaScript `String` constructor under the hood.
|
|
58
|
-
|
|
59
|
-
```res example
|
|
60
|
-
Js.log(Belt.Float.toString(1.0) === "1.0") /* true */
|
|
61
|
-
```
|
|
62
|
-
*)
|
|
63
|
-
|
|
64
|
-
external ( + ) : float -> float -> float = "%addfloat"
|
|
65
|
-
(**
|
|
66
|
-
Addition of two `float` values.
|
|
67
|
-
Can be opened in a module to avoid dot-notation (`+.`), however this yields a shadow warning (Warning number 44) in the default configuration.
|
|
68
|
-
|
|
69
|
-
```res example
|
|
70
|
-
open Belt.Float
|
|
71
|
-
Js.log(2.0 + 2.0 === 4.0) /* true */
|
|
72
|
-
```
|
|
73
|
-
*)
|
|
74
|
-
|
|
75
|
-
external ( - ) : float -> float -> float = "%subfloat"
|
|
76
|
-
(**
|
|
77
|
-
Subtraction of two `float` values.
|
|
78
|
-
Can be opened in a module to avoid dot-notation (`-.`), however this yields a shadow warning (Warning number 44) in the default configuration.
|
|
79
|
-
|
|
80
|
-
```res example
|
|
81
|
-
open Belt.Float
|
|
82
|
-
Js.log(2.0 - 1.0 === 1.0) /* true */
|
|
83
|
-
```
|
|
84
|
-
*)
|
|
85
|
-
|
|
86
|
-
external ( * ) : float -> float -> float = "%mulfloat"
|
|
87
|
-
(**
|
|
88
|
-
Multiplication of two `float` values.
|
|
89
|
-
Can be opened in a module to avoid dot-notation (`*.`), however this yields a shadow warning (Warning number 44) in the default configuration.
|
|
90
|
-
|
|
91
|
-
```res example
|
|
92
|
-
open Belt.Float
|
|
93
|
-
Js.log(2.0 * 2.0 === 4.0) /* true */
|
|
94
|
-
```
|
|
95
|
-
*)
|
|
96
|
-
|
|
97
|
-
external ( / ) : float -> float -> float = "%divfloat"
|
|
98
|
-
(**
|
|
99
|
-
Division of two `float` values.
|
|
100
|
-
Can be opened in a module to avoid dot-notation (`/.`), however this yields a shadow warning (Warning number 44) in the default configuration.
|
|
101
|
-
|
|
102
|
-
```res example
|
|
103
|
-
open Belt.Float
|
|
104
|
-
Js.log(4.0 / 2.0 === 2.0) /* true */
|
|
105
|
-
```
|
|
106
|
-
*)
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
(***********************************************************************)
|
|
2
|
-
(* *)
|
|
3
|
-
(* OCaml *)
|
|
4
|
-
(* *)
|
|
5
|
-
(* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
|
|
6
|
-
(* *)
|
|
7
|
-
(* Copyright 1996 Institut National de Recherche en Informatique et *)
|
|
8
|
-
(* en Automatique. All rights reserved. This file is distributed *)
|
|
9
|
-
(* under the terms of the GNU Library General Public License, with *)
|
|
10
|
-
(* the special exception on linking described in file ../LICENSE. *)
|
|
11
|
-
(* *)
|
|
12
|
-
(* Adapted by Hongbo Zhang, Authors of ReScript 2017 *)
|
|
13
|
-
(***********************************************************************)
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
module N = Belt_internalBuckets
|
|
17
|
-
module C = Belt_internalBucketsType
|
|
18
|
-
module A = Belt_Array
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
type ('a, 'id) eq = ('a, 'id) Belt_Id.eq
|
|
22
|
-
type ('a, 'id) hash = ('a, 'id) Belt_Id.hash
|
|
23
|
-
type ('a, 'id) id = ('a, 'id) Belt_Id.hashable
|
|
24
|
-
type ('a,'b,'id) t =
|
|
25
|
-
( ('a, 'id) hash, ('a, 'id) eq, 'a, 'b) N.t
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
let clear = C.clear
|
|
29
|
-
let size h = h.C.size
|
|
30
|
-
let forEach = N.forEach
|
|
31
|
-
let forEachU = N.forEachU
|
|
32
|
-
let reduce = N.reduce
|
|
33
|
-
let reduceU = N.reduceU
|
|
34
|
-
let logStats = N.logStats
|
|
35
|
-
let keepMapInPlaceU = N.keepMapInPlaceU
|
|
36
|
-
let keepMapInPlace = N.keepMapInPlace
|
|
37
|
-
let toArray = N.toArray
|
|
38
|
-
let copy = N.copy
|
|
39
|
-
let keysToArray = N.keysToArray
|
|
40
|
-
let valuesToArray = N.valuesToArray
|
|
41
|
-
let getBucketHistogram = N.getBucketHistogram
|
|
42
|
-
let isEmpty = C.isEmpty
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
let rec copyBucketReHash ~hash ~h_buckets ~ndata_tail old_bucket =
|
|
46
|
-
match C.toOpt old_bucket with
|
|
47
|
-
| None -> ()
|
|
48
|
-
| Some cell ->
|
|
49
|
-
let nidx = hash cell.N.key [@bs] land (A.length h_buckets - 1) in
|
|
50
|
-
let v = C.return cell in
|
|
51
|
-
begin match C.toOpt (A.getUnsafe ndata_tail nidx) with
|
|
52
|
-
| None ->
|
|
53
|
-
A.setUnsafe h_buckets nidx v
|
|
54
|
-
| Some tail ->
|
|
55
|
-
tail.N.next <- v (* cell put at the end *)
|
|
56
|
-
end;
|
|
57
|
-
A.setUnsafe ndata_tail nidx v;
|
|
58
|
-
copyBucketReHash ~hash ~h_buckets ~ndata_tail cell.N.next
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
let resize ~hash h =
|
|
62
|
-
let odata = h.C.buckets in
|
|
63
|
-
let osize = A.length odata in
|
|
64
|
-
let nsize = osize * 2 in
|
|
65
|
-
if nsize >= osize then begin (* no overflow *)
|
|
66
|
-
let h_buckets = A.makeUninitialized nsize in
|
|
67
|
-
let ndata_tail = A.makeUninitialized nsize in (* keep track of tail *)
|
|
68
|
-
h.C.buckets <- h_buckets; (* so that indexfun sees the new bucket count *)
|
|
69
|
-
for i = 0 to osize - 1 do
|
|
70
|
-
copyBucketReHash ~hash ~h_buckets ~ndata_tail (A.getUnsafe odata i)
|
|
71
|
-
done;
|
|
72
|
-
for i = 0 to nsize - 1 do
|
|
73
|
-
match C.toOpt (A.getUnsafe ndata_tail i) with
|
|
74
|
-
| None -> ()
|
|
75
|
-
| Some tail -> tail.N.next <- C.emptyOpt
|
|
76
|
-
done
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
let rec replaceInBucket ~eq key info cell =
|
|
80
|
-
if eq cell.N.key key [@bs]
|
|
81
|
-
then
|
|
82
|
-
begin
|
|
83
|
-
cell.N.value <- info;
|
|
84
|
-
false
|
|
85
|
-
end
|
|
86
|
-
else
|
|
87
|
-
match C.toOpt cell.N.next with
|
|
88
|
-
| None -> true
|
|
89
|
-
| Some cell ->
|
|
90
|
-
replaceInBucket ~eq key info cell
|
|
91
|
-
|
|
92
|
-
let set0 h key value ~eq ~hash =
|
|
93
|
-
let h_buckets = h.C.buckets in
|
|
94
|
-
let buckets_len = A.length h_buckets in
|
|
95
|
-
let i = hash key [@bs] land (buckets_len - 1) in
|
|
96
|
-
let l = A.getUnsafe h_buckets i in
|
|
97
|
-
(match C.toOpt l with
|
|
98
|
-
| None ->
|
|
99
|
-
A.setUnsafe h_buckets i (C.return {N.key; value; next = C.emptyOpt});
|
|
100
|
-
h.C.size <- (h.C.size + 1);
|
|
101
|
-
| Some bucket ->
|
|
102
|
-
if replaceInBucket ~eq key value bucket then begin
|
|
103
|
-
A.setUnsafe h_buckets i (C.return {N.key; value; next = l});
|
|
104
|
-
h.C.size <- (h.C.size + 1);
|
|
105
|
-
end
|
|
106
|
-
);
|
|
107
|
-
if h.C.size > buckets_len lsl 1 then resize ~hash h
|
|
108
|
-
|
|
109
|
-
(* if `key` already exists, replace it, otherwise add it
|
|
110
|
-
Here we add it to the head, it could be tail
|
|
111
|
-
*)
|
|
112
|
-
let set h key value =
|
|
113
|
-
set0 h key value
|
|
114
|
-
~eq:(Belt_Id.getEqInternal h.C.eq)
|
|
115
|
-
~hash:(Belt_Id.getHashInternal h.C.hash)
|
|
116
|
-
|
|
117
|
-
let rec removeInBucket h h_buckets i key prec bucket ~eq =
|
|
118
|
-
match C.toOpt bucket with
|
|
119
|
-
| None -> ()
|
|
120
|
-
| Some cell ->
|
|
121
|
-
let cell_next = cell.N.next in
|
|
122
|
-
if eq cell.N.key key [@bs]
|
|
123
|
-
then
|
|
124
|
-
begin
|
|
125
|
-
prec.N.next <- cell_next ;
|
|
126
|
-
h.C.size <- (h.C.size - 1);
|
|
127
|
-
end
|
|
128
|
-
else removeInBucket ~eq h h_buckets i key cell cell_next
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
let remove h key =
|
|
132
|
-
let h_buckets = h.C.buckets in
|
|
133
|
-
let i = (Belt_Id.getHashInternal h.C.hash) key [@bs] land (A.length h_buckets - 1) in
|
|
134
|
-
let bucket = A.getUnsafe h_buckets i in
|
|
135
|
-
match C.toOpt bucket with
|
|
136
|
-
| None -> ()
|
|
137
|
-
| Some cell ->
|
|
138
|
-
let eq = (Belt_Id.getEqInternal h.C.eq) in
|
|
139
|
-
if eq cell.N.key key [@bs] then
|
|
140
|
-
begin
|
|
141
|
-
A.setUnsafe h_buckets i cell.N.next;
|
|
142
|
-
h.C.size <- (h.C.size - 1)
|
|
143
|
-
end
|
|
144
|
-
else
|
|
145
|
-
removeInBucket ~eq h h_buckets i key cell cell.N.next
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
let rec getAux ~eq key buckets =
|
|
149
|
-
match C.toOpt buckets with
|
|
150
|
-
| None ->
|
|
151
|
-
None
|
|
152
|
-
| Some cell ->
|
|
153
|
-
if eq key cell.N.key [@bs] then Some cell.N.value
|
|
154
|
-
else getAux ~eq key cell.N.next
|
|
155
|
-
|
|
156
|
-
let get h key =
|
|
157
|
-
let h_buckets = h.C.buckets in
|
|
158
|
-
let nid = (Belt_Id.getHashInternal h.C.hash) key [@bs] land (A.length h_buckets - 1) in
|
|
159
|
-
match C.toOpt (A.getUnsafe h_buckets nid) with
|
|
160
|
-
| None -> None
|
|
161
|
-
| Some (cell1 : _ N.bucket) ->
|
|
162
|
-
let eq = Belt_Id.getEqInternal h.C.eq in
|
|
163
|
-
if eq key cell1.key [@bs] then
|
|
164
|
-
Some cell1.value
|
|
165
|
-
else
|
|
166
|
-
match C.toOpt cell1.N.next with
|
|
167
|
-
| None -> None
|
|
168
|
-
| Some cell2 ->
|
|
169
|
-
if eq key cell2.key [@bs] then
|
|
170
|
-
Some cell2.value else
|
|
171
|
-
match C.toOpt cell2.next with
|
|
172
|
-
| None -> None
|
|
173
|
-
| Some cell3 ->
|
|
174
|
-
if eq key cell3.key [@bs] then
|
|
175
|
-
Some cell3.value
|
|
176
|
-
else
|
|
177
|
-
getAux ~eq key cell3.next
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
let rec memInBucket key cell ~eq =
|
|
181
|
-
eq cell.N.key key [@bs] ||
|
|
182
|
-
(match C.toOpt cell.N.next with
|
|
183
|
-
| None -> false
|
|
184
|
-
| Some nextCell ->
|
|
185
|
-
memInBucket ~eq key nextCell)
|
|
186
|
-
|
|
187
|
-
let has h key =
|
|
188
|
-
let h_buckets = h.C.buckets in
|
|
189
|
-
let nid = (Belt_Id.getHashInternal h.C.hash) key [@bs] land (A.length h_buckets - 1) in
|
|
190
|
-
let bucket = A.getUnsafe h_buckets nid in
|
|
191
|
-
match C.toOpt bucket with
|
|
192
|
-
| None -> false
|
|
193
|
-
| Some bucket ->
|
|
194
|
-
memInBucket ~eq:(Belt_Id.getEqInternal h.C.eq) key bucket
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
let make (type key identity) ~hintSize ~(id : (key,identity) id) =
|
|
200
|
-
let module M = (val id) in
|
|
201
|
-
C.make ~hash:M.hash ~eq:M.eq ~hintSize
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
let fromArray (type a identity) arr ~id:(id:(a,identity) id) =
|
|
205
|
-
let module M = (val id) in
|
|
206
|
-
let hash, eq = M.hash, M.eq in
|
|
207
|
-
let len = A.length arr in
|
|
208
|
-
let v = C.make ~hash ~eq ~hintSize:len in
|
|
209
|
-
let eq, hash = Belt_Id.getEqInternal eq, Belt_Id.getHashInternal hash in
|
|
210
|
-
for i = 0 to len - 1 do
|
|
211
|
-
let key,value = (A.getUnsafe arr i) in
|
|
212
|
-
set0 ~eq ~hash v key value
|
|
213
|
-
done ;
|
|
214
|
-
v
|
|
215
|
-
|
|
216
|
-
let mergeMany h arr =
|
|
217
|
-
let hash, eq = Belt_Id.getHashInternal h.C.hash , Belt_Id.getEqInternal h.C.eq in
|
|
218
|
-
let len = A.length arr in
|
|
219
|
-
for i = 0 to len - 1 do
|
|
220
|
-
let key,value = (A.getUnsafe arr i) in
|
|
221
|
-
set0 h ~eq ~hash key value
|
|
222
|
-
done
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
module Int = Belt_HashMapInt
|
|
226
|
-
module String = Belt_HashMapString
|