Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions codeflash/discovery/functions_to_optimize.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,10 @@
from codeflash.verification.verification_utils import TestConfig
from rich.text import Text

_property_id = "property"

_ast_name = ast.Name


@dataclass(frozen=True)
class FunctionProperties:
Expand Down Expand Up @@ -774,9 +778,8 @@ def function_has_return_statement(function_node: FunctionDef | AsyncFunctionDef)


def function_is_a_property(function_node: FunctionDef | AsyncFunctionDef) -> bool:
property_id = "property"
ast_name = ast.Name
for node in function_node.decorator_list: # noqa: SIM110
if type(node) is ast_name and node.id == property_id:
# Use isinstance rather than type(...) is ... for better performance with single inheritance trees like ast
if isinstance(node, _ast_name) and node.id == _property_id:
return True
return False
Loading