@prelude/array
Version:
Array module.
22 lines • 568 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const bsearch = (values, cmp) => {
let low = 0;
let high = values.length - 1;
while (low <= high) {
const mid = (low + high) >>> 1;
switch (cmp(values[mid])) {
case -1:
low = mid + 1;
break;
case 1:
high = mid - 1;
break;
default:
return mid;
}
}
return -(low + 1);
};
exports.default = bsearch;
//# sourceMappingURL=bsearch.js.map