@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
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
# 10 "others/hashset.cppo.ml"
|
|
2
|
-
type key = int
|
|
3
|
-
type seed = int
|
|
4
|
-
external caml_hash_mix_int : seed -> int -> seed = "?hash_mix_int"
|
|
5
|
-
external final_mix : seed -> seed = "?hash_final_mix"
|
|
6
|
-
let hash (s : key) =
|
|
7
|
-
final_mix (caml_hash_mix_int 0 s)
|
|
8
|
-
|
|
9
|
-
# 20 "others/hashset.cppo.ml"
|
|
10
|
-
module N = Belt_internalSetBuckets
|
|
11
|
-
module C = Belt_internalBucketsType
|
|
12
|
-
module A = Belt_Array
|
|
13
|
-
|
|
14
|
-
type t = (unit, unit, key) N.t
|
|
15
|
-
|
|
16
|
-
let rec copyBucket ~h_buckets ~ndata_tail old_bucket =
|
|
17
|
-
match C.toOpt old_bucket with
|
|
18
|
-
| None -> ()
|
|
19
|
-
| Some cell ->
|
|
20
|
-
let nidx = hash cell.N.key land (A.length h_buckets - 1) in
|
|
21
|
-
let v = C.return cell in
|
|
22
|
-
begin match C.toOpt (A.getUnsafe ndata_tail nidx) with
|
|
23
|
-
| None ->
|
|
24
|
-
A.setUnsafe h_buckets nidx v
|
|
25
|
-
| Some tail ->
|
|
26
|
-
tail.N.next <- v (* cell put at the end *)
|
|
27
|
-
end;
|
|
28
|
-
A.setUnsafe ndata_tail nidx v;
|
|
29
|
-
copyBucket ~h_buckets ~ndata_tail cell.N.next
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
let tryDoubleResize h =
|
|
33
|
-
let odata = h.C.buckets in
|
|
34
|
-
let osize = A.length odata in
|
|
35
|
-
let nsize = osize * 2 in
|
|
36
|
-
if nsize >= osize then begin (* no overflow *)
|
|
37
|
-
let h_buckets = A.makeUninitialized nsize in
|
|
38
|
-
let ndata_tail = A.makeUninitialized nsize in (* keep track of tail *)
|
|
39
|
-
h.C.buckets <-h_buckets; (* so that indexfun sees the new bucket count *)
|
|
40
|
-
for i = 0 to osize - 1 do
|
|
41
|
-
copyBucket ~h_buckets ~ndata_tail (A.getUnsafe odata i)
|
|
42
|
-
done;
|
|
43
|
-
for i = 0 to nsize - 1 do
|
|
44
|
-
match C.toOpt (A.getUnsafe ndata_tail i) with
|
|
45
|
-
| None -> ()
|
|
46
|
-
| Some tail -> tail.N.next <- C.emptyOpt
|
|
47
|
-
done
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
let rec removeBucket h h_buckets i (key : key) prec cell =
|
|
53
|
-
let cell_next = cell.N.next in
|
|
54
|
-
if cell.N.key = key
|
|
55
|
-
then
|
|
56
|
-
begin
|
|
57
|
-
prec.N.next <- cell_next;
|
|
58
|
-
h.C.size <- (h.C.size - 1);
|
|
59
|
-
end
|
|
60
|
-
else
|
|
61
|
-
match C.toOpt cell_next with
|
|
62
|
-
| None ->
|
|
63
|
-
()
|
|
64
|
-
| Some cell_next ->
|
|
65
|
-
removeBucket h h_buckets i key cell cell_next
|
|
66
|
-
|
|
67
|
-
let remove h (key : key)=
|
|
68
|
-
let h_buckets = h.C.buckets in
|
|
69
|
-
let i = hash key land (A.length h_buckets - 1) in
|
|
70
|
-
let l = A.getUnsafe h_buckets i in
|
|
71
|
-
match C.toOpt l with
|
|
72
|
-
| None -> ()
|
|
73
|
-
| Some cell ->
|
|
74
|
-
let next_cell = cell.N.next in
|
|
75
|
-
if cell.N.key = key then
|
|
76
|
-
begin
|
|
77
|
-
h.C.size <- (h.C.size- 1) ;
|
|
78
|
-
A.setUnsafe h_buckets i next_cell
|
|
79
|
-
end
|
|
80
|
-
else
|
|
81
|
-
match C.toOpt next_cell with
|
|
82
|
-
| None -> ()
|
|
83
|
-
| Some next_cell ->
|
|
84
|
-
removeBucket h h_buckets i key cell next_cell
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
let rec addBucket h (key : key) cell =
|
|
88
|
-
if cell.N.key <> key then
|
|
89
|
-
let n = cell.N.next in
|
|
90
|
-
match C.toOpt n with
|
|
91
|
-
| None ->
|
|
92
|
-
h.C.size <- (h.C.size+ 1);
|
|
93
|
-
cell.N.next <- (C.return {N.key; next = C.emptyOpt});
|
|
94
|
-
| Some n -> addBucket h key n
|
|
95
|
-
|
|
96
|
-
let add h (key : key) =
|
|
97
|
-
let h_buckets = h.C.buckets in
|
|
98
|
-
let buckets_len = A.length h_buckets in
|
|
99
|
-
let i = hash key land (buckets_len - 1) in
|
|
100
|
-
let l = A.getUnsafe h_buckets i in
|
|
101
|
-
(match C.toOpt l with
|
|
102
|
-
| None ->
|
|
103
|
-
A.setUnsafe h_buckets i
|
|
104
|
-
(C.return {N.key ; next = C.emptyOpt});
|
|
105
|
-
h.C.size <- (h.C.size + 1);
|
|
106
|
-
| Some cell ->
|
|
107
|
-
addBucket h key cell);
|
|
108
|
-
if h.C.size> buckets_len lsl 1 then tryDoubleResize h
|
|
109
|
-
|
|
110
|
-
let rec memInBucket (key : key) cell =
|
|
111
|
-
cell.N.key = key ||
|
|
112
|
-
(match C.toOpt cell.N.next with
|
|
113
|
-
| None -> false
|
|
114
|
-
| Some nextCell ->
|
|
115
|
-
memInBucket key nextCell)
|
|
116
|
-
|
|
117
|
-
let has h key =
|
|
118
|
-
let h_buckets = h.C.buckets in
|
|
119
|
-
let nid = hash key land (A.length h_buckets - 1) in
|
|
120
|
-
let bucket = A.getUnsafe h_buckets nid in
|
|
121
|
-
match C.toOpt bucket with
|
|
122
|
-
| None -> false
|
|
123
|
-
| Some bucket ->
|
|
124
|
-
memInBucket key bucket
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
let make ~hintSize = C.make ~hintSize ~hash:() ~eq:()
|
|
128
|
-
|
|
129
|
-
let clear = C.clear
|
|
130
|
-
let size h = h.C.size
|
|
131
|
-
let forEachU = N.forEachU
|
|
132
|
-
let forEach = N.forEach
|
|
133
|
-
let reduceU = N.reduceU
|
|
134
|
-
let reduce = N.reduce
|
|
135
|
-
let logStats = N.logStats
|
|
136
|
-
let toArray = N.toArray
|
|
137
|
-
let copy = N.copy
|
|
138
|
-
let getBucketHistogram = N.getBucketHistogram
|
|
139
|
-
let isEmpty = C.isEmpty
|
|
140
|
-
|
|
141
|
-
let fromArray arr =
|
|
142
|
-
let len = A.length arr in
|
|
143
|
-
let v = C.make ~hintSize:len ~hash:() ~eq:() in
|
|
144
|
-
for i = 0 to len - 1 do
|
|
145
|
-
add v (A.getUnsafe arr i)
|
|
146
|
-
done ;
|
|
147
|
-
v
|
|
148
|
-
|
|
149
|
-
(* TOOD: optimize heuristics for resizing *)
|
|
150
|
-
let mergeMany h arr =
|
|
151
|
-
let len = A.length arr in
|
|
152
|
-
for i = 0 to len - 1 do
|
|
153
|
-
add h (A.getUnsafe arr i)
|
|
154
|
-
done
|
|
155
|
-
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
# 2 "others/hashset.cppo.mli"
|
|
3
|
-
(* Copyright (C) 2017 Authors of ReScript
|
|
4
|
-
*
|
|
5
|
-
* This program is free software: you can redistribute it and/or modify
|
|
6
|
-
* it under the terms of the GNU Lesser General Public License as published by
|
|
7
|
-
* the Free Software Foundation, either version 3 of the License, or
|
|
8
|
-
* (at your option) any later version.
|
|
9
|
-
*
|
|
10
|
-
* In addition to the permissions granted to you by the LGPL, you may combine
|
|
11
|
-
* or link a "work that uses the Library" with a publicly distributed version
|
|
12
|
-
* of this file to produce a combined library or application, then distribute
|
|
13
|
-
* that combined work under the terms of your choosing, with no requirement
|
|
14
|
-
* to comply with the obligations normally placed on you by section 4 of the
|
|
15
|
-
* LGPL version 3 (or the corresponding section of a later version of the LGPL
|
|
16
|
-
* should you choose to use a later version).
|
|
17
|
-
*
|
|
18
|
-
* This program is distributed in the hope that it will be useful,
|
|
19
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
20
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
21
|
-
* GNU Lesser General Public License for more details.
|
|
22
|
-
*
|
|
23
|
-
* You should have received a copy of the GNU Lesser General Public License
|
|
24
|
-
* along with this program; if not, write to the Free Software
|
|
25
|
-
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *)
|
|
26
|
-
|
|
27
|
-
(**
|
|
28
|
-
This module is [`Belt.HashSet`]() specialized with key type to be a primitive type.
|
|
29
|
-
|
|
30
|
-
It is more efficient in general, the API is the same with [`Belt.HashSet`]() except its key type is fixed,
|
|
31
|
-
and identity is not needed(using the built-in one)
|
|
32
|
-
|
|
33
|
-
**See** [`Belt.HashSet`]()
|
|
34
|
-
*)
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
# 39 "others/hashset.cppo.mli"
|
|
38
|
-
type key = int
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
# 45 "others/hashset.cppo.mli"
|
|
42
|
-
type t
|
|
43
|
-
|
|
44
|
-
val make: hintSize:int -> t
|
|
45
|
-
|
|
46
|
-
val clear: t -> unit
|
|
47
|
-
|
|
48
|
-
val isEmpty: t -> bool
|
|
49
|
-
|
|
50
|
-
val add: t -> key -> unit
|
|
51
|
-
|
|
52
|
-
val copy: t -> t
|
|
53
|
-
|
|
54
|
-
val has: t -> key -> bool
|
|
55
|
-
|
|
56
|
-
val remove: t -> key -> unit
|
|
57
|
-
|
|
58
|
-
val forEachU: t -> (key -> unit [@bs]) -> unit
|
|
59
|
-
val forEach: t -> (key -> unit) -> unit
|
|
60
|
-
|
|
61
|
-
val reduceU: t -> 'c -> ( 'c -> key -> 'c [@bs]) -> 'c
|
|
62
|
-
val reduce: t -> 'c -> ( 'c -> key -> 'c) -> 'c
|
|
63
|
-
|
|
64
|
-
val size: t -> int
|
|
65
|
-
|
|
66
|
-
val logStats: t -> unit
|
|
67
|
-
|
|
68
|
-
val toArray: t -> key array
|
|
69
|
-
|
|
70
|
-
val fromArray: key array -> t
|
|
71
|
-
|
|
72
|
-
val mergeMany: t -> key array -> unit
|
|
73
|
-
|
|
74
|
-
val getBucketHistogram: t -> int array
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
# 2 "others/hashset.cppo.ml"
|
|
2
|
-
type key = string
|
|
3
|
-
type seed = int
|
|
4
|
-
external caml_hash_mix_string : seed -> string -> seed = "?hash_mix_string"
|
|
5
|
-
external final_mix : seed -> seed = "?hash_final_mix"
|
|
6
|
-
let hash (s : key) =
|
|
7
|
-
final_mix (caml_hash_mix_string 0 s )
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
# 20 "others/hashset.cppo.ml"
|
|
11
|
-
module N = Belt_internalSetBuckets
|
|
12
|
-
module C = Belt_internalBucketsType
|
|
13
|
-
module A = Belt_Array
|
|
14
|
-
|
|
15
|
-
type t = (unit, unit, key) N.t
|
|
16
|
-
|
|
17
|
-
let rec copyBucket ~h_buckets ~ndata_tail old_bucket =
|
|
18
|
-
match C.toOpt old_bucket with
|
|
19
|
-
| None -> ()
|
|
20
|
-
| Some cell ->
|
|
21
|
-
let nidx = hash cell.N.key land (A.length h_buckets - 1) in
|
|
22
|
-
let v = C.return cell in
|
|
23
|
-
begin match C.toOpt (A.getUnsafe ndata_tail nidx) with
|
|
24
|
-
| None ->
|
|
25
|
-
A.setUnsafe h_buckets nidx v
|
|
26
|
-
| Some tail ->
|
|
27
|
-
tail.N.next <- v (* cell put at the end *)
|
|
28
|
-
end;
|
|
29
|
-
A.setUnsafe ndata_tail nidx v;
|
|
30
|
-
copyBucket ~h_buckets ~ndata_tail cell.N.next
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
let tryDoubleResize h =
|
|
34
|
-
let odata = h.C.buckets in
|
|
35
|
-
let osize = A.length odata in
|
|
36
|
-
let nsize = osize * 2 in
|
|
37
|
-
if nsize >= osize then begin (* no overflow *)
|
|
38
|
-
let h_buckets = A.makeUninitialized nsize in
|
|
39
|
-
let ndata_tail = A.makeUninitialized nsize in (* keep track of tail *)
|
|
40
|
-
h.C.buckets <-h_buckets; (* so that indexfun sees the new bucket count *)
|
|
41
|
-
for i = 0 to osize - 1 do
|
|
42
|
-
copyBucket ~h_buckets ~ndata_tail (A.getUnsafe odata i)
|
|
43
|
-
done;
|
|
44
|
-
for i = 0 to nsize - 1 do
|
|
45
|
-
match C.toOpt (A.getUnsafe ndata_tail i) with
|
|
46
|
-
| None -> ()
|
|
47
|
-
| Some tail -> tail.N.next <- C.emptyOpt
|
|
48
|
-
done
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
let rec removeBucket h h_buckets i (key : key) prec cell =
|
|
54
|
-
let cell_next = cell.N.next in
|
|
55
|
-
if cell.N.key = key
|
|
56
|
-
then
|
|
57
|
-
begin
|
|
58
|
-
prec.N.next <- cell_next;
|
|
59
|
-
h.C.size <- (h.C.size - 1);
|
|
60
|
-
end
|
|
61
|
-
else
|
|
62
|
-
match C.toOpt cell_next with
|
|
63
|
-
| None ->
|
|
64
|
-
()
|
|
65
|
-
| Some cell_next ->
|
|
66
|
-
removeBucket h h_buckets i key cell cell_next
|
|
67
|
-
|
|
68
|
-
let remove h (key : key)=
|
|
69
|
-
let h_buckets = h.C.buckets in
|
|
70
|
-
let i = hash key land (A.length h_buckets - 1) in
|
|
71
|
-
let l = A.getUnsafe h_buckets i in
|
|
72
|
-
match C.toOpt l with
|
|
73
|
-
| None -> ()
|
|
74
|
-
| Some cell ->
|
|
75
|
-
let next_cell = cell.N.next in
|
|
76
|
-
if cell.N.key = key then
|
|
77
|
-
begin
|
|
78
|
-
h.C.size <- (h.C.size- 1) ;
|
|
79
|
-
A.setUnsafe h_buckets i next_cell
|
|
80
|
-
end
|
|
81
|
-
else
|
|
82
|
-
match C.toOpt next_cell with
|
|
83
|
-
| None -> ()
|
|
84
|
-
| Some next_cell ->
|
|
85
|
-
removeBucket h h_buckets i key cell next_cell
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
let rec addBucket h (key : key) cell =
|
|
89
|
-
if cell.N.key <> key then
|
|
90
|
-
let n = cell.N.next in
|
|
91
|
-
match C.toOpt n with
|
|
92
|
-
| None ->
|
|
93
|
-
h.C.size <- (h.C.size+ 1);
|
|
94
|
-
cell.N.next <- (C.return {N.key; next = C.emptyOpt});
|
|
95
|
-
| Some n -> addBucket h key n
|
|
96
|
-
|
|
97
|
-
let add h (key : key) =
|
|
98
|
-
let h_buckets = h.C.buckets in
|
|
99
|
-
let buckets_len = A.length h_buckets in
|
|
100
|
-
let i = hash key land (buckets_len - 1) in
|
|
101
|
-
let l = A.getUnsafe h_buckets i in
|
|
102
|
-
(match C.toOpt l with
|
|
103
|
-
| None ->
|
|
104
|
-
A.setUnsafe h_buckets i
|
|
105
|
-
(C.return {N.key ; next = C.emptyOpt});
|
|
106
|
-
h.C.size <- (h.C.size + 1);
|
|
107
|
-
| Some cell ->
|
|
108
|
-
addBucket h key cell);
|
|
109
|
-
if h.C.size> buckets_len lsl 1 then tryDoubleResize h
|
|
110
|
-
|
|
111
|
-
let rec memInBucket (key : key) cell =
|
|
112
|
-
cell.N.key = key ||
|
|
113
|
-
(match C.toOpt cell.N.next with
|
|
114
|
-
| None -> false
|
|
115
|
-
| Some nextCell ->
|
|
116
|
-
memInBucket key nextCell)
|
|
117
|
-
|
|
118
|
-
let has h key =
|
|
119
|
-
let h_buckets = h.C.buckets in
|
|
120
|
-
let nid = hash key land (A.length h_buckets - 1) in
|
|
121
|
-
let bucket = A.getUnsafe h_buckets nid in
|
|
122
|
-
match C.toOpt bucket with
|
|
123
|
-
| None -> false
|
|
124
|
-
| Some bucket ->
|
|
125
|
-
memInBucket key bucket
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
let make ~hintSize = C.make ~hintSize ~hash:() ~eq:()
|
|
129
|
-
|
|
130
|
-
let clear = C.clear
|
|
131
|
-
let size h = h.C.size
|
|
132
|
-
let forEachU = N.forEachU
|
|
133
|
-
let forEach = N.forEach
|
|
134
|
-
let reduceU = N.reduceU
|
|
135
|
-
let reduce = N.reduce
|
|
136
|
-
let logStats = N.logStats
|
|
137
|
-
let toArray = N.toArray
|
|
138
|
-
let copy = N.copy
|
|
139
|
-
let getBucketHistogram = N.getBucketHistogram
|
|
140
|
-
let isEmpty = C.isEmpty
|
|
141
|
-
|
|
142
|
-
let fromArray arr =
|
|
143
|
-
let len = A.length arr in
|
|
144
|
-
let v = C.make ~hintSize:len ~hash:() ~eq:() in
|
|
145
|
-
for i = 0 to len - 1 do
|
|
146
|
-
add v (A.getUnsafe arr i)
|
|
147
|
-
done ;
|
|
148
|
-
v
|
|
149
|
-
|
|
150
|
-
(* TOOD: optimize heuristics for resizing *)
|
|
151
|
-
let mergeMany h arr =
|
|
152
|
-
let len = A.length arr in
|
|
153
|
-
for i = 0 to len - 1 do
|
|
154
|
-
add h (A.getUnsafe arr i)
|
|
155
|
-
done
|
|
156
|
-
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
# 2 "others/hashset.cppo.mli"
|
|
3
|
-
(* Copyright (C) 2017 Authors of ReScript
|
|
4
|
-
*
|
|
5
|
-
* This program is free software: you can redistribute it and/or modify
|
|
6
|
-
* it under the terms of the GNU Lesser General Public License as published by
|
|
7
|
-
* the Free Software Foundation, either version 3 of the License, or
|
|
8
|
-
* (at your option) any later version.
|
|
9
|
-
*
|
|
10
|
-
* In addition to the permissions granted to you by the LGPL, you may combine
|
|
11
|
-
* or link a "work that uses the Library" with a publicly distributed version
|
|
12
|
-
* of this file to produce a combined library or application, then distribute
|
|
13
|
-
* that combined work under the terms of your choosing, with no requirement
|
|
14
|
-
* to comply with the obligations normally placed on you by section 4 of the
|
|
15
|
-
* LGPL version 3 (or the corresponding section of a later version of the LGPL
|
|
16
|
-
* should you choose to use a later version).
|
|
17
|
-
*
|
|
18
|
-
* This program is distributed in the hope that it will be useful,
|
|
19
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
20
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
21
|
-
* GNU Lesser General Public License for more details.
|
|
22
|
-
*
|
|
23
|
-
* You should have received a copy of the GNU Lesser General Public License
|
|
24
|
-
* along with this program; if not, write to the Free Software
|
|
25
|
-
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *)
|
|
26
|
-
|
|
27
|
-
(**
|
|
28
|
-
This module is [`Belt.HashSet`]() specialized with key type to be a primitive type.
|
|
29
|
-
|
|
30
|
-
It is more efficient in general, the API is the same with [`Belt.HashSet`]() except its key type is fixed,
|
|
31
|
-
and identity is not needed(using the built-in one)
|
|
32
|
-
|
|
33
|
-
**See** [`Belt.HashSet`]()
|
|
34
|
-
*)
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
# 37 "others/hashset.cppo.mli"
|
|
38
|
-
type key = string
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
# 45 "others/hashset.cppo.mli"
|
|
42
|
-
type t
|
|
43
|
-
|
|
44
|
-
val make: hintSize:int -> t
|
|
45
|
-
|
|
46
|
-
val clear: t -> unit
|
|
47
|
-
|
|
48
|
-
val isEmpty: t -> bool
|
|
49
|
-
|
|
50
|
-
val add: t -> key -> unit
|
|
51
|
-
|
|
52
|
-
val copy: t -> t
|
|
53
|
-
|
|
54
|
-
val has: t -> key -> bool
|
|
55
|
-
|
|
56
|
-
val remove: t -> key -> unit
|
|
57
|
-
|
|
58
|
-
val forEachU: t -> (key -> unit [@bs]) -> unit
|
|
59
|
-
val forEach: t -> (key -> unit) -> unit
|
|
60
|
-
|
|
61
|
-
val reduceU: t -> 'c -> ( 'c -> key -> 'c [@bs]) -> 'c
|
|
62
|
-
val reduce: t -> 'c -> ( 'c -> key -> 'c) -> 'c
|
|
63
|
-
|
|
64
|
-
val size: t -> int
|
|
65
|
-
|
|
66
|
-
val logStats: t -> unit
|
|
67
|
-
|
|
68
|
-
val toArray: t -> key array
|
|
69
|
-
|
|
70
|
-
val fromArray: key array -> t
|
|
71
|
-
|
|
72
|
-
val mergeMany: t -> key array -> unit
|
|
73
|
-
|
|
74
|
-
val getBucketHistogram: t -> int array
|
package/lib/ocaml/belt_Id.cmi
DELETED
|
Binary file
|
package/lib/ocaml/belt_Id.cmt
DELETED
|
Binary file
|
package/lib/ocaml/belt_Id.cmti
DELETED
|
Binary file
|
package/lib/ocaml/belt_Id.ml
DELETED
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
(* Copyright (C) 2017 Hongbo Zhang, Authors of ReScript
|
|
3
|
-
*
|
|
4
|
-
* This program is free software: you can redistribute it and/or modify
|
|
5
|
-
* it under the terms of the GNU Lesser General Public License as published by
|
|
6
|
-
* the Free Software Foundation, either version 3 of the License, or
|
|
7
|
-
* (at your option) any later version.
|
|
8
|
-
*
|
|
9
|
-
* In addition to the permissions granted to you by the LGPL, you may combine
|
|
10
|
-
* or link a "work that uses the Library" with a publicly distributed version
|
|
11
|
-
* of this file to produce a combined library or application, then distribute
|
|
12
|
-
* that combined work under the terms of your choosing, with no requirement
|
|
13
|
-
* to comply with the obligations normally placed on you by section 4 of the
|
|
14
|
-
* LGPL version 3 (or the corresponding section of a later version of the LGPL
|
|
15
|
-
* should you choose to use a later version).
|
|
16
|
-
*
|
|
17
|
-
* This program is distributed in the hope that it will be useful,
|
|
18
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
19
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
20
|
-
* GNU Lesser General Public License for more details.
|
|
21
|
-
*
|
|
22
|
-
* You should have received a copy of the GNU Lesser General Public License
|
|
23
|
-
* along with this program; if not, write to the Free Software
|
|
24
|
-
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *)
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
type ('a, 'id) hash = ('a -> int [@bs])
|
|
28
|
-
type ('a, 'id) eq = ('a -> 'a -> bool [@bs])
|
|
29
|
-
type ('a, 'id) cmp = ('a -> 'a -> int [@bs])
|
|
30
|
-
|
|
31
|
-
external getHashInternal : ('a,'id) hash -> ('a -> int [@bs]) = "%identity"
|
|
32
|
-
external getEqInternal : ('a, 'id) eq -> ('a -> 'a -> bool [@bs]) = "%identity"
|
|
33
|
-
external getCmpInternal : ('a,'id) cmp -> ('a -> 'a -> int [@bs]) = "%identity"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
module type Comparable = sig
|
|
37
|
-
type identity
|
|
38
|
-
type t
|
|
39
|
-
val cmp: (t, identity) cmp
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
type ('key, 'id) comparable =
|
|
43
|
-
(module Comparable with type t = 'key and type identity = 'id)
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
module MakeComparableU (M : sig
|
|
47
|
-
type t
|
|
48
|
-
val cmp: t -> t -> int [@bs]
|
|
49
|
-
end) =
|
|
50
|
-
struct
|
|
51
|
-
type identity
|
|
52
|
-
include M
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
module MakeComparable (M : sig
|
|
56
|
-
type t
|
|
57
|
-
val cmp: t -> t -> int
|
|
58
|
-
end) =
|
|
59
|
-
struct
|
|
60
|
-
type identity
|
|
61
|
-
type t = M.t
|
|
62
|
-
(* see https://github.com/rescript-lang/rescript-compiler/pull/2589/files/5ef875b7665ee08cfdc59af368fc52bac1fe9130#r173330825 *)
|
|
63
|
-
let cmp =
|
|
64
|
-
let cmp = M.cmp in fun[@bs] a b -> cmp a b
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
let comparableU
|
|
68
|
-
(type key)
|
|
69
|
-
~cmp
|
|
70
|
-
=
|
|
71
|
-
(module MakeComparableU(struct
|
|
72
|
-
type t = key
|
|
73
|
-
let cmp = cmp
|
|
74
|
-
end)
|
|
75
|
-
: Comparable with type t = key)
|
|
76
|
-
|
|
77
|
-
let comparable
|
|
78
|
-
(type key)
|
|
79
|
-
~cmp
|
|
80
|
-
=
|
|
81
|
-
let module N = MakeComparable(struct
|
|
82
|
-
type t = key
|
|
83
|
-
let cmp = cmp
|
|
84
|
-
end) in
|
|
85
|
-
(module N : Comparable with type t = key)
|
|
86
|
-
|
|
87
|
-
module type Hashable = sig
|
|
88
|
-
type identity
|
|
89
|
-
type t
|
|
90
|
-
val hash: (t,identity) hash
|
|
91
|
-
val eq: (t,identity) eq
|
|
92
|
-
end
|
|
93
|
-
|
|
94
|
-
type ('key, 'id) hashable = (module Hashable with type t = 'key and type identity = 'id)
|
|
95
|
-
|
|
96
|
-
module MakeHashableU (M : sig
|
|
97
|
-
type t
|
|
98
|
-
val hash : t -> int [@bs]
|
|
99
|
-
val eq : t -> t -> bool [@bs]
|
|
100
|
-
end) =
|
|
101
|
-
struct
|
|
102
|
-
type identity
|
|
103
|
-
include M
|
|
104
|
-
end
|
|
105
|
-
|
|
106
|
-
module MakeHashable (M : sig
|
|
107
|
-
type t
|
|
108
|
-
val hash : t -> int
|
|
109
|
-
val eq : t -> t -> bool
|
|
110
|
-
end) =
|
|
111
|
-
struct
|
|
112
|
-
type identity
|
|
113
|
-
type t = M.t
|
|
114
|
-
let hash =
|
|
115
|
-
let hash = M.hash in fun[@bs] a -> hash a
|
|
116
|
-
let eq =
|
|
117
|
-
let eq = M.eq in fun[@bs] a b -> eq a b
|
|
118
|
-
end
|
|
119
|
-
|
|
120
|
-
let hashableU (type key) ~hash ~eq =
|
|
121
|
-
(module MakeHashableU(struct
|
|
122
|
-
type t = key
|
|
123
|
-
let hash = hash
|
|
124
|
-
let eq = eq
|
|
125
|
-
end) : Hashable with type t = key)
|
|
126
|
-
|
|
127
|
-
let hashable (type key) ~hash ~eq =
|
|
128
|
-
let module N = MakeHashable(struct
|
|
129
|
-
type t = key
|
|
130
|
-
let hash = hash
|
|
131
|
-
let eq = eq
|
|
132
|
-
end) in
|
|
133
|
-
(module N : Hashable with type t = key)
|