mirror of
https://github.com/BreizhHardware/memoizee.git
synced 2026-03-18 21:40:27 +01:00
Expose get and has methods
This commit is contained in:
@@ -13,7 +13,7 @@ var customError = require('es5-ext/error/custom')
|
||||
, on = ee.on, emit = ee.emit;
|
||||
|
||||
module.exports = function (original, length, options) {
|
||||
var cache = create(null), conf, memLength, get, set, del, clear, extDel, normalizer
|
||||
var cache = create(null), conf, memLength, get, set, del, clear, extDel, extGet, extHas, normalizer
|
||||
, getListeners, setListeners, deleteListeners, memoized, resolve;
|
||||
if (length !== false) memLength = length;
|
||||
else if (isNaN(original.length)) memLength = 1;
|
||||
@@ -135,10 +135,24 @@ module.exports = function (original, length, options) {
|
||||
return conf.delete(arg);
|
||||
};
|
||||
}
|
||||
extGet = function () {
|
||||
var id, args = arguments;
|
||||
if (resolve) args = resolve(args);
|
||||
id = get(args);
|
||||
return cache[id];
|
||||
};
|
||||
extHas = function () {
|
||||
var id, args = arguments;
|
||||
if (resolve) args = resolve(args);
|
||||
id = get(args);
|
||||
return conf.has(id);
|
||||
};
|
||||
defineProperties(memoized, {
|
||||
__memoized__: d(true),
|
||||
delete: d(extDel),
|
||||
clear: d(conf.clear)
|
||||
clear: d(conf.clear),
|
||||
get: d(extGet),
|
||||
has: d(extHas)
|
||||
});
|
||||
return conf;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user