UNPKG

typed-utilities

Version:
41 lines (30 loc) 700 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.weakMemoize = exports.memoize = void 0; const memoize = fn => { const map = new Map(); const fnMmemo = param => { if (map.has(param)) { return map.get(param); } map.set(param, fn(param)); return fnMmemo(param); }; return [fnMmemo, map]; }; exports.memoize = memoize; const weakMemoize = fn => { const map = new WeakMap(); const fnMmemo = param => { if (map.has(param)) { return map.get(param); } map.set(param, fn(param)); return fnMmemo(param); }; return [fnMmemo, map]; }; exports.weakMemoize = weakMemoize; //# sourceMappingURL=Memo.js.map