@fimbul/wotan
Version:
Pluggable TypeScript and JavaScript linter
36 lines • 925 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.DefaultCacheFactory = void 0;
const tslib_1 = require("tslib");
const inversify_1 = require("inversify");
class WeakCache {
constructor() {
this.store = new WeakMap();
}
get(key) {
return this.store.get(key);
}
set(key, value) {
this.store.set(key, value);
}
delete(key) {
this.store.delete(key);
}
has(key) {
return this.store.has(key);
}
clear() {
this.store = new WeakMap();
}
}
let DefaultCacheFactory = class DefaultCacheFactory {
// wotan-enable no-misused-generics
create(weak) {
return weak ? new WeakCache() : new Map();
}
};
DefaultCacheFactory = tslib_1.__decorate([
inversify_1.injectable()
], DefaultCacheFactory);
exports.DefaultCacheFactory = DefaultCacheFactory;
//# sourceMappingURL=cache-factory.js.map
;