time-to-botec/squiggle/node_modules/@rescript/std/lib/es6/belt_MutableMapInt.js
NunoSempere b6addc7f05 feat: add the node modules
Necessary in order to clearly see the squiggle hotwiring.
2022-12-03 12:44:49 +00:00

363 lines
6.5 KiB
JavaScript

import * as Curry from "./curry.js";
import * as Caml_option from "./caml_option.js";
import * as Belt_internalMapInt from "./belt_internalMapInt.js";
import * as Belt_internalAVLtree from "./belt_internalAVLtree.js";
function make(param) {
return {
data: undefined
};
}
function isEmpty(m) {
var x = m.data;
return x === undefined;
}
function clear(m) {
m.data = undefined;
}
function minKeyUndefined(m) {
return Belt_internalAVLtree.minKeyUndefined(m.data);
}
function minKey(m) {
return Belt_internalAVLtree.minKey(m.data);
}
function maxKeyUndefined(m) {
return Belt_internalAVLtree.maxKeyUndefined(m.data);
}
function maxKey(m) {
return Belt_internalAVLtree.maxKey(m.data);
}
function minimum(m) {
return Belt_internalAVLtree.minimum(m.data);
}
function minUndefined(m) {
return Belt_internalAVLtree.minUndefined(m.data);
}
function maximum(m) {
return Belt_internalAVLtree.maximum(m.data);
}
function maxUndefined(m) {
return Belt_internalAVLtree.maxUndefined(m.data);
}
function set(m, k, v) {
var old_data = m.data;
var v$1 = Belt_internalMapInt.addMutate(old_data, k, v);
if (v$1 !== old_data) {
m.data = v$1;
return ;
}
}
function forEachU(d, f) {
Belt_internalAVLtree.forEachU(d.data, f);
}
function forEach(d, f) {
Belt_internalAVLtree.forEachU(d.data, Curry.__2(f));
}
function mapU(d, f) {
return {
data: Belt_internalAVLtree.mapU(d.data, f)
};
}
function map(d, f) {
return mapU(d, Curry.__1(f));
}
function mapWithKeyU(d, f) {
return {
data: Belt_internalAVLtree.mapWithKeyU(d.data, f)
};
}
function mapWithKey(d, f) {
return mapWithKeyU(d, Curry.__2(f));
}
function reduceU(d, acc, f) {
return Belt_internalAVLtree.reduceU(d.data, acc, f);
}
function reduce(d, acc, f) {
return reduceU(d, acc, Curry.__3(f));
}
function everyU(d, f) {
return Belt_internalAVLtree.everyU(d.data, f);
}
function every(d, f) {
return Belt_internalAVLtree.everyU(d.data, Curry.__2(f));
}
function someU(d, f) {
return Belt_internalAVLtree.someU(d.data, f);
}
function some(d, f) {
return Belt_internalAVLtree.someU(d.data, Curry.__2(f));
}
function size(d) {
return Belt_internalAVLtree.size(d.data);
}
function toList(d) {
return Belt_internalAVLtree.toList(d.data);
}
function toArray(d) {
return Belt_internalAVLtree.toArray(d.data);
}
function keysToArray(d) {
return Belt_internalAVLtree.keysToArray(d.data);
}
function valuesToArray(d) {
return Belt_internalAVLtree.valuesToArray(d.data);
}
function checkInvariantInternal(d) {
Belt_internalAVLtree.checkInvariantInternal(d.data);
}
function has(d, v) {
return Belt_internalMapInt.has(d.data, v);
}
function removeMutateAux(nt, x) {
var k = nt.k;
if (x === k) {
var l = nt.l;
var r = nt.r;
if (l !== undefined) {
if (r !== undefined) {
nt.r = Belt_internalAVLtree.removeMinAuxWithRootMutate(nt, r);
return Belt_internalAVLtree.balMutate(nt);
} else {
return l;
}
} else {
return r;
}
}
if (x < k) {
var l$1 = nt.l;
if (l$1 !== undefined) {
nt.l = removeMutateAux(l$1, x);
return Belt_internalAVLtree.balMutate(nt);
} else {
return nt;
}
}
var r$1 = nt.r;
if (r$1 !== undefined) {
nt.r = removeMutateAux(r$1, x);
return Belt_internalAVLtree.balMutate(nt);
} else {
return nt;
}
}
function remove(d, v) {
var oldRoot = d.data;
if (oldRoot === undefined) {
return ;
}
var newRoot = removeMutateAux(oldRoot, v);
if (newRoot !== oldRoot) {
d.data = newRoot;
return ;
}
}
function updateDone(t, x, f) {
if (t !== undefined) {
var k = t.k;
if (k === x) {
var data = f(Caml_option.some(t.v));
if (data !== undefined) {
t.v = Caml_option.valFromOption(data);
return t;
}
var l = t.l;
var r = t.r;
if (l !== undefined) {
if (r !== undefined) {
t.r = Belt_internalAVLtree.removeMinAuxWithRootMutate(t, r);
return Belt_internalAVLtree.balMutate(t);
} else {
return l;
}
} else {
return r;
}
}
var l$1 = t.l;
var r$1 = t.r;
if (x < k) {
var ll = updateDone(l$1, x, f);
t.l = ll;
} else {
t.r = updateDone(r$1, x, f);
}
return Belt_internalAVLtree.balMutate(t);
}
var data$1 = f(undefined);
if (data$1 !== undefined) {
return Belt_internalAVLtree.singleton(x, Caml_option.valFromOption(data$1));
} else {
return t;
}
}
function updateU(t, x, f) {
var oldRoot = t.data;
var newRoot = updateDone(oldRoot, x, f);
if (newRoot !== oldRoot) {
t.data = newRoot;
return ;
}
}
function update(t, x, f) {
updateU(t, x, Curry.__1(f));
}
function removeArrayMutateAux(_t, xs, _i, len) {
while(true) {
var i = _i;
var t = _t;
if (i >= len) {
return t;
}
var ele = xs[i];
var u = removeMutateAux(t, ele);
if (u === undefined) {
return ;
}
_i = i + 1 | 0;
_t = u;
continue ;
};
}
function removeMany(d, xs) {
var oldRoot = d.data;
if (oldRoot === undefined) {
return ;
}
var len = xs.length;
var newRoot = removeArrayMutateAux(oldRoot, xs, 0, len);
if (newRoot !== oldRoot) {
d.data = newRoot;
return ;
}
}
function fromArray(xs) {
return {
data: Belt_internalMapInt.fromArray(xs)
};
}
function cmpU(d0, d1, f) {
return Belt_internalMapInt.cmpU(d0.data, d1.data, f);
}
function cmp(d0, d1, f) {
return cmpU(d0, d1, Curry.__2(f));
}
function eqU(d0, d1, f) {
return Belt_internalMapInt.eqU(d0.data, d1.data, f);
}
function eq(d0, d1, f) {
return eqU(d0, d1, Curry.__2(f));
}
function get(d, x) {
return Belt_internalMapInt.get(d.data, x);
}
function getUndefined(d, x) {
return Belt_internalMapInt.getUndefined(d.data, x);
}
function getWithDefault(d, x, def) {
return Belt_internalMapInt.getWithDefault(d.data, x, def);
}
function getExn(d, x) {
return Belt_internalMapInt.getExn(d.data, x);
}
export {
make ,
clear ,
isEmpty ,
has ,
cmpU ,
cmp ,
eqU ,
eq ,
forEachU ,
forEach ,
reduceU ,
reduce ,
everyU ,
every ,
someU ,
some ,
size ,
toList ,
toArray ,
fromArray ,
keysToArray ,
valuesToArray ,
minKey ,
minKeyUndefined ,
maxKey ,
maxKeyUndefined ,
minimum ,
minUndefined ,
maximum ,
maxUndefined ,
get ,
getUndefined ,
getWithDefault ,
getExn ,
checkInvariantInternal ,
remove ,
removeMany ,
set ,
updateU ,
update ,
mapU ,
map ,
mapWithKeyU ,
mapWithKey ,
}
/* No side effect */