[perf] Extension list cache (#3616)

This commit is contained in:
Vlad Stan
2025-12-04 10:57:17 +02:00
committed by GitHub
parent ca94909aab
commit ad268516a9
4 changed files with 45 additions and 2 deletions
+6
View File
@@ -13,6 +13,9 @@ class Cached(NamedTuple):
value: Any
expiry: float
def older_than(self, seconds: float) -> bool:
return time() - self.expiry > seconds
class Cache:
"""
@@ -23,6 +26,9 @@ class Cache:
self.interval = interval
self._values: dict[Any, Cached] = {}
def value(self, key: str) -> Cached | None:
return self._values.get(key)
def get(self, key: str, default=None) -> Any | None:
cached = self._values.get(key)
if cached is not None: