Ruby引发异常

示例

要引发异常,请使用Kernel#raise传递异常类和/或消息的方法:

raise StandardError # 引发一个StandardError.new
raise StandardError, "An error" # 引发一个StandardError.new("An error")

您也可以简单地传递错误消息。在这种情况下,邮件被包装为RuntimeError:

raise "An error" # raises a RuntimeError.new("An error")

这是一个例子:

def hello(subject)
  raise ArgumentError, "`subject` is missing" if subject.to_s.empty?
  puts "Hello #{subject}"
end

hello # => ArgumentError: `subject` is missing
hello("Simone") # => "Hello Simone"