collector = YieldNodeCollector()
collector.visitchildren(node.result_expr)
if collector.yields or isinstance(node.result_expr, ExprNodes.YieldExprNode):
- body = ExprNodes.YieldExprNode(
- node.result_expr.pos, arg=node.result_expr)
- body = Nodes.ExprStatNode(node.result_expr.pos, expr=body)
+ body = Nodes.ExprStatNode(
+ node.result_expr.pos, expr=node.result_expr)
else:
body = Nodes.ReturnStatNode(
node.result_expr.pos, value=node.result_expr)
>>> obj = test_inside_lambda()()
>>> next(obj)
1
- >>> obj.send('a')
+ >>> next(obj)
2
- >>> obj.send('b')
- ('a', 'b')
+ >>> next(obj)
+ Traceback (most recent call last):
+ StopIteration
"""
return lambda:((yield 1), (yield 2))
>>> obj = test_inside_lambda()()
>>> next(obj)
1
- >>> obj.send('a')
+ >>> next(obj)
2
- >>> obj.send('b')
- ('a', 'b')
+ >>> next(obj)
+ Traceback (most recent call last):
+ StopIteration
"""
return lambda:((yield 1), (yield 2))