UNPKG

925 BJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.DefaultCacheFactory = void 0;
4const tslib_1 = require("tslib");
5const inversify_1 = require("inversify");
6class WeakCache {
7 constructor() {
8 this.store = new WeakMap();
9 }
10 get(key) {
11 return this.store.get(key);
12 }
13 set(key, value) {
14 this.store.set(key, value);
15 }
16 delete(key) {
17 this.store.delete(key);
18 }
19 has(key) {
20 return this.store.has(key);
21 }
22 clear() {
23 this.store = new WeakMap();
24 }
25}
26let DefaultCacheFactory = class DefaultCacheFactory {
27 // wotan-enable no-misused-generics
28 create(weak) {
29 return weak ? new WeakCache() : new Map();
30 }
31};
32DefaultCacheFactory = tslib_1.__decorate([
33 inversify_1.injectable()
34], DefaultCacheFactory);
35exports.DefaultCacheFactory = DefaultCacheFactory;
36//# sourceMappingURL=cache-factory.js.map
\No newline at end of file