JezK
Edit File: cache.js.map
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,SAAS,SAAS;IAChB,2BAA2B;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAElC,yEAAyE;IACzE,yEAAyE;IACzE,uCAAuC;IACvC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpB,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEvB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,iBAAS,MAAM,KAAK;IAElB;QACE,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAU;QACzB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,GAAG,CAAC,GAAW;QACb,OAAO,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IACzC,CAAC;CACF,CAAC","sourcesContent":["'use strict';\n\nfunction makeCache() {\n // object with no prototype\n const cache = Object.create(null);\n\n // force the jit to immediately realize this object is a dictionary. This\n // should prevent the JIT from going wastefully one direction (fast mode)\n // then going another (dict mode) after\n cache['_cache'] = 1;\n delete cache['_cache'];\n\n return cache;\n}\n\nexport = class Cache {\n _store: { [key: string]: string };\n constructor() {\n this._store = makeCache();\n }\n\n set(key: string, value: any) {\n return (this._store[key] = value);\n }\n\n get(key: string) {\n return this._store[key];\n }\n\n has(key: string) {\n return key in this._store;\n }\n\n delete(key: string) {\n delete this._store[key];\n }\n\n get size() {\n return Object.keys(this._store).length;\n }\n};\n"]}