binomial-heap
Version:
No dependency binomial heap, compatible with typescript, can have custom compare function
29 lines (28 loc) • 1.53 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.promisifyHeap = void 0;
exports.promisifyHeap = function (heap) {
var promisified = {
heap: heap,
compare: function (cmp) { return new Promise(function (resolve) {
promisified.heap.compare(cmp);
return resolve(promisified);
}); },
delete: function (cmp) { return new Promise(function (resolve) { return resolve(promisified.heap.delete(cmp)); }); },
equals: function (to) { return new Promise(function (resolve) { return resolve(promisified.heap.equals(to.heap)); }); },
merge: function (next, compare, disable) { return new Promise(function (resolve) {
promisified.heap.merge(next.heap, compare, disable);
resolve(promisified);
}); },
min: function () { return promisified.heap.min(); },
pop: function () { return new Promise(function (resolve) { return resolve(promisified.heap.pop()); }); },
push: function (item, compare, disable) { return new Promise(function (resolve) {
promisified.heap.push(item, compare, disable);
resolve(promisified);
}); },
search: function (cmp) { return new Promise(function (resolve) { return resolve(promisified.heap.search(cmp)); }); },
sort: function () { return new Promise(function (resolve) { return resolve(promisified.heap.sort()); }); },
sync: function () { return promisified.heap; },
};
return promisified;
};
;