Skip to content

Commit 2856451

Browse files
stainless-app[bot]stainless-bot
authored andcommitted
chore(internal): add lru_cache helper function (#352)
1 parent 5c22134 commit 2856451

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

src/finch/_utils/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
is_list as is_list,
77
is_given as is_given,
88
is_tuple as is_tuple,
9+
lru_cache as lru_cache,
910
is_mapping as is_mapping,
1011
is_tuple_t as is_tuple_t,
1112
parse_date as parse_date,

src/finch/_utils/_utils.py

+8
Original file line numberDiff line numberDiff line change
@@ -389,3 +389,11 @@ def get_async_library() -> str:
389389
return sniffio.current_async_library()
390390
except Exception:
391391
return "false"
392+
393+
394+
def lru_cache(*, maxsize: int | None = 128) -> Callable[[CallableT], CallableT]:
395+
"""A version of functools.lru_cache that retains the type signature
396+
for the wrapped function arguments.
397+
"""
398+
wrapper = functools.lru_cache(maxsize=maxsize)
399+
return cast(Any, wrapper) # type: ignore[no-any-return]

0 commit comments

Comments
 (0)