top | item 37099206

(no title)

_0w8t | 2 years ago

Defer will be executed normally when the function exits. yield here is not a statement but a normal function.

discuss

order

_0w8t|2 years ago

I.e. C# and many other languages transform a function with the yield statement into a state machine implementing the iteration protocol.

This proposal does the opposite. It transforms the loop body into a closure passed into the iterator.