builtins/loop_enumerator.rb
tests/_examples/builtins/loop_enumerator.rb in the metorex repository.
counted = 0
result = loop do
counted += 1
break counted if counted >= 3
end
puts result
generated = Enumerator.new do |yielder|
yielder << 1
yielder << 2
:finished
end
puts generated.next
puts generated.next
puts loop { generated.next }
stopped = loop do
raise StopIteration
end
puts stopped.inspect
endless = loop
puts endless.instance_of? Enumerator
puts endless.size
seen = 0
answer = endless.each do |*args|
seen += 1
break seen if seen >= 4
end
puts answer
pairs = Enumerator.new do |yielder|
yielder.yield 1, 2
yielder.yield 3, 4
end
p pairs.to_a
Output:
3
1
2
finished
nil
true
Infinity
4
[[1, 2], [3, 4]]