fork download
  1. def foo(arg)
  2. puts "#{arg}: foo"
  3. arg == 1 ? true : false
  4. end
  5.  
  6. def bar(arg)
  7. puts "#{arg}: bar"
  8. arg == 2 ? true : false
  9. end
  10.  
  11. def baz(arg)
  12. puts "#{arg}: baz"
  13. arg == 3 ? true : false
  14. end
  15.  
  16. commands = [method(:foo), method(:bar), method(:baz)]
  17.  
  18. [0,1,2,3,4].each do |x|
  19. commands.reduce(false) do |skip_iteration, command|
  20. break if skip_iteration
  21. command.call(x)
  22. end
  23. end
  24.  
Success #stdin #stdout 0s 6252KB
stdin
Standard input is empty
stdout
0: foo
0: bar
0: baz
1: foo
2: foo
2: bar
3: foo
3: bar
3: baz
4: foo
4: bar
4: baz