diff options
| author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2021-01-21 22:49:54 -0500 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-21 22:49:54 -0500 | 
| commit | cf57c4e38d619d979ca39328bd9ec4821f284816 (patch) | |
| tree | 0bd80612cc5200218f76ae51ab4025c33a7c26a6 /ext/bg/js | |
| parent | 0bc5a4a971126adca1787d90db36b13716638290 (diff) | |
Simplify CacheMap (#1287)
* Simplify CacheMap, removing support for array path keys
* Update keys
* Update JsonSchemaValidator
* Update AudioSystem
Diffstat (limited to 'ext/bg/js')
| -rw-r--r-- | ext/bg/js/json-schema.js | 10 | 
1 files changed, 7 insertions, 3 deletions
| diff --git a/ext/bg/js/json-schema.js b/ext/bg/js/json-schema.js index 85ced354..7b6b9c53 100644 --- a/ext/bg/js/json-schema.js +++ b/ext/bg/js/json-schema.js @@ -125,7 +125,7 @@ class JsonSchemaProxyHandler {  class JsonSchemaValidator {      constructor() { -        this._regexCache = new CacheMap(100, ([pattern, flags]) => new RegExp(pattern, flags)); +        this._regexCache = new CacheMap(100);      }      createProxy(target, schema) { @@ -705,8 +705,12 @@ class JsonSchemaValidator {      }      _getRegex(pattern, flags) { -        const regex = this._regexCache.getOrCreate([pattern, flags]); -        regex.lastIndex = 0; +        const key = `${flags}:${pattern}`; +        let regex = this._regexCache.get(key); +        if (typeof regex === 'undefined') { +            regex = new RegExp(pattern, flags); +            this._regexCache.set(key, regex); +        }          return regex;      }  } |