Esempio n. 1
0
 def visit_AugAssign(self, node):
     if (isinstance(node.target, ast.Name)
             and node.target.id not in self.kept_targets
             and is_ref_transparent(node.value)[0]):
         return None
     else:
         return node
Esempio n. 2
0
 def visit_Assign(self, node):
     new_targets = []
     for target in node.targets:
         if (not isinstance(target, ast.Name)
                 or target.id in self.kept_targets):
             new_targets.append(target)
     if not new_targets and is_ref_transparent(node.value)[0]:
         return None
     else:
         return node
Esempio n. 3
0
 def visit_Assign(self, node):
     node.value = self.visit(node.value)
     node.targets = [self.visit(target) for target in node.targets]
     rt, depends_on = is_ref_transparent(node.value)
     if rt and count_all_nodes(node.value) < 100:
         for target in node.targets:
             if isinstance(target, ast.Name):
                 if target.id not in depends_on:
                     self.replacements[target.id] = node.value
                     for d in depends_on:
                         self.dependencies[d].add(target.id)
     return node
Esempio n. 4
0
 def visit_Assign(self, node):
     node.value = self.visit(node.value)
     node.targets = [self.visit(target) for target in node.targets]
     rt, depends_on = is_ref_transparent(node.value)
     if rt and count_all_nodes(node.value) < 100:
         for target in node.targets:
             if isinstance(target, ast.Name):
                 if target.id not in depends_on:
                     self.replacements[target.id] = node.value
                     for d in depends_on:
                         self.dependencies[d].add(target.id)
     return node