I have an arbitrary method in Ruby that yields multiple values so it can be handed to a block:
def arbitrary
yield 1
yield 2
yield 3
yield 4
end
arbitrary { |x| puts x }
I'd like to modify this method so that, if there is no block, it just returns the values as an array. So this construct would work as well:
myarray = arbitrary
p a -----> [1, 2, 3, 4, 5]
Is this possible in Ruby?