Path 1: 27 calls (0.43)

AssignName (18) AssignAttr (9)

Const (21) BinOp (3) List (1) Attribute (1) Tuple (1)

False (27)

1def _is_target_name_in_binop_side(
2    target: nodes.AssignName | nodes.AssignAttr, side: nodes.NodeNG | None
3) -> bool:
4    """Determine whether the target name-like node is referenced in the side node."""
5    if isinstance(side, nodes.Name):
6        if isinstance(target, nodes.AssignName):
7            return target.name == side.name  # type: ignore[no-any-return]
8        return False
9    if isinstance(side, nodes.Attribute) and isinstance(target, nodes.AssignAttr):
10        return target.as_string() == side.as_string()  # type: ignore[no-any-return]
11    return False
            

Path 2: 25 calls (0.4)

AssignName (25)

Name (25)

True (24) False (1)

1def _is_target_name_in_binop_side(
2    target: nodes.AssignName | nodes.AssignAttr, side: nodes.NodeNG | None
3) -> bool:
4    """Determine whether the target name-like node is referenced in the side node."""
5    if isinstance(side, nodes.Name):
6        if isinstance(target, nodes.AssignName):
7            return target.name == side.name  # type: ignore[no-any-return]
8        return False
9    if isinstance(side, nodes.Attribute) and isinstance(target, nodes.AssignAttr):
10        return target.as_string() == side.as_string()  # type: ignore[no-any-return]
11    return False
            

Path 3: 9 calls (0.14)

AssignAttr (9)

Attribute (9)

True (7) False (2)

1def _is_target_name_in_binop_side(
2    target: nodes.AssignName | nodes.AssignAttr, side: nodes.NodeNG | None
3) -> bool:
4    """Determine whether the target name-like node is referenced in the side node."""
5    if isinstance(side, nodes.Name):
6        if isinstance(target, nodes.AssignName):
7            return target.name == side.name  # type: ignore[no-any-return]
8        return False
9    if isinstance(side, nodes.Attribute) and isinstance(target, nodes.AssignAttr):
10        return target.as_string() == side.as_string()  # type: ignore[no-any-return]
11    return False
            

Path 4: 2 calls (0.03)

AssignAttr (2)

Name (2)

False (2)

1def _is_target_name_in_binop_side(
2    target: nodes.AssignName | nodes.AssignAttr, side: nodes.NodeNG | None
3) -> bool:
4    """Determine whether the target name-like node is referenced in the side node."""
5    if isinstance(side, nodes.Name):
6        if isinstance(target, nodes.AssignName):
7            return target.name == side.name  # type: ignore[no-any-return]
8        return False
9    if isinstance(side, nodes.Attribute) and isinstance(target, nodes.AssignAttr):
10        return target.as_string() == side.as_string()  # type: ignore[no-any-return]
11    return False