mirror of
https://github.com/long2ice/fastapi-cache.git
synced 2026-03-25 04:57:54 +00:00
feat: add more type hints
This commit is contained in:
@@ -20,13 +20,14 @@ class InMemoryBackend(Backend):
|
||||
def _now(self) -> int:
|
||||
return int(time.time())
|
||||
|
||||
def _get(self, key: str):
|
||||
def _get(self, key: str) -> Value | None:
|
||||
v = self._store.get(key)
|
||||
if v:
|
||||
if v.ttl_ts < self._now:
|
||||
del self._store[key]
|
||||
else:
|
||||
return v
|
||||
return None
|
||||
|
||||
async def get_with_ttl(self, key: str) -> Tuple[int, Optional[str]]:
|
||||
async with self._lock:
|
||||
@@ -35,17 +36,18 @@ class InMemoryBackend(Backend):
|
||||
return v.ttl_ts - self._now, v.data
|
||||
return 0, None
|
||||
|
||||
async def get(self, key: str) -> str:
|
||||
async def get(self, key: str) -> Optional[str]:
|
||||
async with self._lock:
|
||||
v = self._get(key)
|
||||
if v:
|
||||
return v.data
|
||||
return None
|
||||
|
||||
async def set(self, key: str, value: str, expire: int = None):
|
||||
async def set(self, key: str, value: str, expire: Optional[int] = None) -> None:
|
||||
async with self._lock:
|
||||
self._store[key] = Value(value, self._now + (expire or 0))
|
||||
|
||||
async def clear(self, namespace: str = None, key: str = None) -> int:
|
||||
async def clear(self, namespace: Optional[str] = None, key: Optional[str] = None) -> int:
|
||||
count = 0
|
||||
if namespace:
|
||||
keys = list(self._store.keys())
|
||||
|
||||
Reference in New Issue
Block a user