diff options
Diffstat (limited to 'packages/server/src/utils/LruCache.ts')
| -rw-r--r-- | packages/server/src/utils/LruCache.ts | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/packages/server/src/utils/LruCache.ts b/packages/server/src/utils/LruCache.ts deleted file mode 100644 index 076828c4..00000000 --- a/packages/server/src/utils/LruCache.ts +++ /dev/null @@ -1,41 +0,0 @@ -/** - * @license - * Copyright 2025 Google LLC - * SPDX-License-Identifier: Apache-2.0 - */ - -export class LruCache<K, V> { - private cache: Map<K, V>; - private maxSize: number; - - constructor(maxSize: number) { - this.cache = new Map<K, V>(); - this.maxSize = maxSize; - } - - get(key: K): V | undefined { - const value = this.cache.get(key); - if (value) { - // Move to end to mark as recently used - this.cache.delete(key); - this.cache.set(key, value); - } - return value; - } - - set(key: K, value: V): void { - if (this.cache.has(key)) { - this.cache.delete(key); - } else if (this.cache.size >= this.maxSize) { - const firstKey = this.cache.keys().next().value; - if (firstKey !== undefined) { - this.cache.delete(firstKey); - } - } - this.cache.set(key, value); - } - - clear(): void { - this.cache.clear(); - } -} |
