Sha256: 1fd831c3cc4048be9db0fc988cdf4625afaa7758e73af52547fba58ab98f24ff
Contents?: true
Size: 891 Bytes
Versions: 5
Compression:
Stored size: 891 Bytes
Contents
class NamespaceCache { static _instance = null; namespaceCache = []; constructor() { if (NamespaceCache._instance === null) { NamespaceCache._instance = this; } return NamespaceCache._instance; } cacheNamespace(namespaceRegex) { this.namespaceCache.push(namespaceRegex); } isNamespaceCacheEmpty() { return this.namespaceCache.length === 0; } isTypeAllowed(typeToCheck) { for (let pattern of this.namespaceCache) { if (new RegExp(pattern).test(typeToCheck.constructor.name)) { return true; } } return false; } getCachedNamespaces() { return this.namespaceCache; } clearCache() { this.namespaceCache = []; return 0; } } module.exports = NamespaceCache;
Version data entries
5 entries across 5 versions & 1 rubygems