(projectRoot: string, queries: QueryBuilder)
| 240 | private workspacePackages: WorkspacePackages | null | undefined = undefined; |
| 241 | |
| 242 | constructor(projectRoot: string, queries: QueryBuilder) { |
| 243 | this.projectRoot = projectRoot; |
| 244 | this.queries = queries; |
| 245 | |
| 246 | const limit = resolveCacheLimit(); |
| 247 | // The content cache is heavier (full file text), so we give it a |
| 248 | // smaller budget than the metadata caches. |
| 249 | const contentLimit = Math.max(64, Math.floor(limit / 5)); |
| 250 | this.nodeCache = new LRUCache(limit); |
| 251 | this.fileCache = new LRUCache(contentLimit); |
| 252 | this.importMappingCache = new LRUCache(limit); |
| 253 | this.reExportCache = new LRUCache(limit); |
| 254 | this.nameCache = new LRUCache(limit); |
| 255 | this.lowerNameCache = new LRUCache(limit); |
| 256 | this.qualifiedNameCache = new LRUCache(limit); |
| 257 | |
| 258 | this.context = this.createContext(); |
| 259 | } |
| 260 | |
| 261 | /** |
| 262 | * Initialize the resolver (detect frameworks, etc.) |
nothing calls this directly
no test coverage detected