Skip to content

Commit

Permalink
Fix some RUF012 per file ignores (#11399)
Browse files Browse the repository at this point in the history
* updating DIRECTORY.md

* Fix some RUF012 per file ignores

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix

* Fix

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix

* Improve

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Improve

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: MaximSmolskiy <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
  • Loading branch information
3 people authored Mar 11, 2025
1 parent 23eb174 commit 7ce998b
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 19 deletions.
18 changes: 10 additions & 8 deletions other/lfu_cache.py
Original file line number Diff line number Diff line change
Expand Up @@ -196,9 +196,6 @@ class LFUCache(Generic[T, U]):
CacheInfo(hits=196, misses=100, capacity=100, current_size=100)
"""

# class variable to map the decorator functions to their respective instance
decorator_function_to_instance_map: dict[Callable[[T], U], LFUCache[T, U]] = {}

def __init__(self, capacity: int):
self.list: DoubleLinkedList[T, U] = DoubleLinkedList()
self.capacity = capacity
Expand Down Expand Up @@ -291,18 +288,23 @@ def decorator(
"""

def cache_decorator_inner(func: Callable[[T], U]) -> Callable[..., U]:
# variable to map the decorator functions to their respective instance
decorator_function_to_instance_map: dict[
Callable[[T], U], LFUCache[T, U]
] = {}

def cache_decorator_wrapper(*args: T) -> U:
if func not in cls.decorator_function_to_instance_map:
cls.decorator_function_to_instance_map[func] = LFUCache(size)
if func not in decorator_function_to_instance_map:
decorator_function_to_instance_map[func] = LFUCache(size)

result = cls.decorator_function_to_instance_map[func].get(args[0])
result = decorator_function_to_instance_map[func].get(args[0])
if result is None:
result = func(*args)
cls.decorator_function_to_instance_map[func].put(args[0], result)
decorator_function_to_instance_map[func].put(args[0], result)
return result

def cache_info() -> LFUCache[T, U]:
return cls.decorator_function_to_instance_map[func]
return decorator_function_to_instance_map[func]

setattr(cache_decorator_wrapper, "cache_info", cache_info) # noqa: B010

Expand Down
18 changes: 10 additions & 8 deletions other/lru_cache.py
Original file line number Diff line number Diff line change
Expand Up @@ -209,9 +209,6 @@ class LRUCache(Generic[T, U]):
CacheInfo(hits=194, misses=99, capacity=100, current size=99)
"""

# class variable to map the decorator functions to their respective instance
decorator_function_to_instance_map: dict[Callable[[T], U], LRUCache[T, U]] = {}

def __init__(self, capacity: int):
self.list: DoubleLinkedList[T, U] = DoubleLinkedList()
self.capacity = capacity
Expand Down Expand Up @@ -308,18 +305,23 @@ def decorator(
"""

def cache_decorator_inner(func: Callable[[T], U]) -> Callable[..., U]:
# variable to map the decorator functions to their respective instance
decorator_function_to_instance_map: dict[
Callable[[T], U], LRUCache[T, U]
] = {}

def cache_decorator_wrapper(*args: T) -> U:
if func not in cls.decorator_function_to_instance_map:
cls.decorator_function_to_instance_map[func] = LRUCache(size)
if func not in decorator_function_to_instance_map:
decorator_function_to_instance_map[func] = LRUCache(size)

result = cls.decorator_function_to_instance_map[func].get(args[0])
result = decorator_function_to_instance_map[func].get(args[0])
if result is None:
result = func(*args)
cls.decorator_function_to_instance_map[func].put(args[0], result)
decorator_function_to_instance_map[func].put(args[0], result)
return result

def cache_info() -> LRUCache[T, U]:
return cls.decorator_function_to_instance_map[func]
return decorator_function_to_instance_map[func]

setattr(cache_decorator_wrapper, "cache_info", cache_info) # noqa: B010

Expand Down
3 changes: 0 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -135,9 +135,6 @@ lint.per-file-ignores."machine_learning/sequential_minimum_optimization.py" = [
lint.per-file-ignores."matrix/sherman_morrison.py" = [
"SIM103",
]
lint.per-file-ignores."other/l*u_cache.py" = [
"RUF012",
]
lint.per-file-ignores."physics/newtons_second_law_of_motion.py" = [
"BLE001",
]
Expand Down

0 comments on commit 7ce998b

Please sign in to comment.