예제 #1
0
 def _update_evaluated(self, targets, assigned,
                       evaluation='', eval_type=False, type_hint=None):
     result = {}
     if isinstance(targets, str):
         assignment = pynames.AssignmentValue(assigned, [],
                                              evaluation, eval_type)
         self._assigned(targets, assignment)
     else:
         names = astutils.get_name_levels(targets)
         for name, levels in names:
             assignment = pynames.AssignmentValue(assigned, levels,
                                                  evaluation, eval_type)
             self._assigned(name, assignment)
     return result
예제 #2
0
 def _Tuple(self, node):
     names = astutils.get_name_levels(node)
     for name, levels in names:
         assignment = None
         if self.assigned_ast is not None:
             assignment = pynames.AssignmentValue(self.assigned_ast, levels)
         self._assigned(name, assignment)
예제 #3
0
 def _update_evaluated(self, targets, assigned,
                       evaluation= '', eval_type=False):
     result = {}
     names = astutils.get_name_levels(targets)
     for name, levels in names:
         assignment = pynames.AssignmentValue(assigned, levels,
                                              evaluation, eval_type)
         self._assigned(name, assignment)
     return result
예제 #4
0
 def _Attribute(self, node):
     if not isinstance(node.ctx, ast.Store):
         return
     if isinstance(node.value, ast.Name) and \
        node.value.id == self.self_name:
         if node.attr not in self.scope_visitor.names:
             self.scope_visitor.names[node.attr] = pynames.AssignedName(
                 lineno=node.lineno, module=self.scope_visitor.get_module())
         if self.assigned_ast is not None:
             pyname = self.scope_visitor.names[node.attr]
             if isinstance(pyname, pynames.AssignedName):
                 pyname.assignments.append(
                     pynames.AssignmentValue(self.assigned_ast))
예제 #5
0
 def _Name(self, node):
     assignment = None
     if self.assigned_ast is not None:
         assignment = pynames.AssignmentValue(self.assigned_ast)
     self._assigned(node.id, assignment)
예제 #6
0
 def _Name(self, node):
     assignment = pynames.AssignmentValue(self.assigned_ast,
                                          assign_type=True,
                                          type_hint=self.type_hint)
     self._assigned(node.id, assignment)