(r)
| 673 | """ |
| 674 | trace = [] |
| 675 | def f(r): |
| 676 | gi = g(r) |
| 677 | next(gi) |
| 678 | try: |
| 679 | trace.append("f resuming g") |
| 680 | next(gi) |
| 681 | trace.append("f SHOULD NOT BE HERE") |
| 682 | except StopIteration as e: |
| 683 | trace.append("f caught %r" % (e,)) |
| 684 | def g(r): |
| 685 | trace.append("g starting") |
| 686 | yield |