Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > NameErrorクラス

class NameError

クラスの継承リスト: NameError < StandardError < Exception < Object < Kernel < BasicObject

要約

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

例:

bar
# => NameError: undefined local variable or method `bar' for main:Object

目次

特異メソッド
new
インスタンスメソッド
local_variables name receiver to_s

特異メソッド

new(error_message = "", name = nil) -> NameError[permalink][rdoc]

例外オブジェクトを生成して返します。

[PARAM] error_message:
エラーメッセージを表す文字列です
[PARAM] name:
未定義だったシンボルです

例:

err = NameError.new("message", "foo")
p err       # => #<NameError: message>
p err.name  # => "foo"

インスタンスメソッド

local_variables -> [Symbol][permalink][rdoc]

self が発生した時に定義されていたローカル変数名の一覧を返します。

内部での使用に限ります。

name -> Symbol[permalink][rdoc]

この例外オブジェクトを発生させる原因となった 変数や定数、メソッドの名前をシンボルで返します。

例:

begin
  foobar
rescue NameError => err
  p err       # => #<NameError: undefined local variable or method `foobar' for main:Object>
  p err.name  # => :foobar
end
receiver -> object[permalink][rdoc]

self が発生した時のレシーバオブジェクトを返します。

to_s -> String[permalink][rdoc]

例外オブジェクトを文字列に変換して返します。