control_flow/yield_placement_no_parens.rb
tests/_examples/control_flow/yield_placement_no_parens.rb in the metorex repository.
def hands_over
yield(1)
end
puts hands_over { |taken| taken * 2 }
["class Holder; yield; end", "module Held; yield; end", "1.times { yield }"].each do |source|
begin
eval source
puts "no error"
rescue SyntaxError => error
puts error.message.include?("Invalid yield").to_s
end
end
Output:
2
true
true
true