Пример #1
0
 def visit_ifexp(self, node, parent):
     """visit a IfExp node by returning a fresh instance of it"""
     newnode = nodes.IfExp(node.lineno, node.col_offset, parent)
     newnode.postinit(self.visit(node.test, newnode),
                      self.visit(node.body, newnode),
                      self.visit(node.orelse, newnode))
     return newnode
Пример #2
0
 def visit_ifexp(self, node, parent):
     """visit a IfExp node by returning a fresh instance of it"""
     newnode = new.IfExp()
     _lineno_parent(node, newnode, parent)
     newnode.test = self.visit(node.test, newnode)
     newnode.body = self.visit(node.body, newnode)
     newnode.orelse = self.visit(node.orelse, newnode)
     return newnode
Пример #3
0
def ifexp_node(draw,
               test=const_node(hs.booleans()),
               expr=const_node(),
               orelse=const_node()):
    # TODO: Add an option for whether expr and orelse strategies produce the same type.
    test = draw(test)
    expr = draw(expr)
    node = nodes.IfExp()
    node.postinit(test, expr, expr)
    return node