проверить этот код и вывод
def lab
yield
ensure
puts 'in ensure block'
true
end
puts lab { puts 'inside inline block'; false }
output is
#inside inline block
#in ensure block
#false
Я ожидал, что после того, как блок будет выполнен, будет гарантировано, что он будет выполнен, и так как гарантированный вернет true, окончательный результат вызова метода будет 'true'.