NameError

未定義のローカル変数や定数を使用したときに発生します。

スーパークラス:

クラスメソッド:

NameError.new(error_message[, name]) ((<ruby 1.8 feature>))

例外オブジェクトを生成して返します。nameは未定義だったシンボルです。

err = NameError.new("message", "foo")
p err
p err.name

# => #<NameError: message>
     "foo"

メソッド:

NameError#name

未定義だったシンボルを返します。

begin
  foobar
rescue NameError
  p $!
  p $!.name
end
# => #<NameError: undefined local variable or method `foobar' for main:Object>
     :foobar


rubyist ML