def visit_Attribute(self, node): attr = node.attr value_id = self.visit(node.value) if is_list(node.value): if node.attr == "append": attr = "push" if not value_id: value_id = "" if is_class_or_module(value_id, node.scopes): return "{0}::{1}".format(value_id, attr) return value_id + "." + attr
def visit_Attribute(self, node): attr = node.attr value_id = self.visit(node.value) if is_list(node.value): if node.attr == "append": attr = "push" if not value_id: value_id = "" if is_class_or_module(value_id, node.scopes): return f"{value_id}.{attr}" if is_self_arg(value_id, node.scopes): return attr return f"{value_id}.{attr}"
def test_is_list(): source = parse("list1 = []", "list2 = list1") add_list_calls(source) list2 = source.body[1] assert is_list(list2)