Skip to content

Commit

Permalink
Solution whith Any type
Browse files Browse the repository at this point in the history
  • Loading branch information
Ngayka committed Nov 30, 2024
1 parent 5891c38 commit f4ed394
Showing 1 changed file with 16 additions and 3 deletions.
19 changes: 16 additions & 3 deletions app/main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,19 @@
from typing import Callable
from typing import Callable, Any
from functools import wraps


def cache(func: Callable) -> Callable:
# Write your code here
pass
cache_storage = {}

@wraps(func)
def wrapper(*args, **kwargs) -> Any:
cache_key = (args, tuple(sorted(kwargs.items())))
if cache_key in cache_storage:
print("Getting from cache")
return cache_storage[cache_key]
else:
print("Calculating new result")
result = func(*args, **kwargs)
cache_storage[cache_key] = result
return result
return wrapper

0 comments on commit f4ed394

Please sign in to comment.