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
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
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
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
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