Esempio n. 1
0
 def visit_tuple(self, node, parent):
     """visit a Tuple node by returning a fresh instance of it"""
     newnode = new.Tuple()
     _lineno_parent(node, newnode, parent)
     newnode.elts = [self.visit(child, newnode) for child in node.elts]
     newnode.set_line_info(newnode.last_child())
     return newnode
Esempio n. 2
0
 def _nodify_args(self, parent, values):
     """transform arguments and tuples or lists of arguments into astng nodes"""
     res = []
     for arg in values:
         if isinstance(arg, (tuple, list)):
             n = new.Tuple()
             self._set_infos(parent, n, parent)
             n.elts = self._nodify_args(n, arg)
         else:
             assert isinstance(arg, basestring)
             n = new.AssName()
             self._set_infos(parent, n, parent)
             n.name = arg
             self._save_assignment(n, n.name)
         res.append(n)
     return res
Esempio n. 3
0
def make_tuple(make, get_class, args):
    nexts = [make(a) for a in args]
    result = nodes.Tuple()
    result.elts = nexts
    return result
Esempio n. 4
0
 def visit_tuple(self, node, parent):
     """visit a Tuple node by returning a fresh instance of it"""
     newnode = new.Tuple()
     self._set_infos(node, newnode, parent)
     newnode.elts = [self.visit(child, newnode) for child in node.nodes]
     return newnode