コード例 #1
0
ファイル: rebuilder.py プロジェクト: DanielCollins/astroid
 def visit_comprehension(self, node, parent):
     """visit a Comprehension node by returning a fresh instance of it"""
     newnode = nodes.Comprehension(parent)
     newnode.postinit(self.visit(node.target, newnode),
                      self.visit(node.iter, newnode),
                      [self.visit(child, newnode) for child in node.ifs])
     return newnode
コード例 #2
0
 def visit_comprehension(self, node, parent, assign_ctx=None):
     """visit a Comprehension node by returning a fresh instance of it"""
     newnode = new.Comprehension()
     newnode.parent = parent
     newnode.target = self.visit(node.target, newnode, 'Assign')
     newnode.iter = self.visit(node.iter, newnode, None)
     newnode.ifs = [self.visit(child, newnode, None) for child in node.ifs]
     return newnode
コード例 #3
0
 def visit_comprehension(self, node, parent):
     """visit a Comprehension node by returning a fresh instance of it"""
     newnode = new.Comprehension()
     newnode.parent = parent
     self.asscontext = "Ass"
     newnode.target = self.visit(node.target, newnode)
     self.asscontext = None
     newnode.iter = self.visit(node.iter, newnode)
     newnode.ifs = [self.visit(child, newnode) for child in node.ifs]
     return newnode
コード例 #4
0
 def visit_comprehension(self, node, parent):
     """visit a Comprehension node by returning a fresh instance of it"""
     newnode = new.Comprehension()
     _lineno_parent(node, newnode, parent)
     self.asscontext = "Ass"
     newnode.target = self.visit(node.target, newnode)
     self.asscontext = None
     newnode.iter = self.visit(node.iter, newnode)
     newnode.ifs = [self.visit(child, newnode) for child in node.ifs]
     newnode.set_line_info(newnode.last_child())
     return newnode
コード例 #5
0
def comprehension_node(draw, target=None, iter=None, ifs=hs.just([])):
    target = target or const_node(valid_identifier())
    iter = iter or list_node()
    node = nodes.Comprehension()
    node.postinit(draw(target), draw(iter), draw(ifs))
    return node