抓住

與許多其他程式語言不同,throwcatch 關鍵字與 Ruby 中的異常處理無關。

在 Ruby 中,throwcatch 在其他語言中有點像標籤。它們用於更改控制流,但與異常之類的錯誤概念無關。

catch(:out) do
  catch(:nested) do
    puts "nested"
  end

  puts "before"
  throw :out
  puts "will not be executed"
end
puts "after"
# prints "nested", "before", "after"