Question

I'm trying to understand how this iterator works:

def two_times          
    yield
    yield
end

two_times {puts "Hello"}

Does the second part call the method and then yield calls {puts "Hello"}?

Was it helpful?

Solution

Essentially, yes. The last line invokes the method two_times and passes in a block whose code prints out Hello. Each time the method executes yield, the block is executed.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top