NameError
NameError
NameError는 이름이 유효하지 않거나 정의되지 않았을 때 발생하는 예외예요. 상수 이름은 대문자로 시작해야 하는데, 그 규칙을 어기거나 정의되지 않은 변수를 참조할 때 이 예외를 만나게 돼요.
puts foo
# NameError: undefined local variable or method `foo' for main:Object
출처: Ruby 4.0 API
본문
Public Class Methods
new(msg=nil, name=nil, receiver: nil) → name_error
NameError 예외를 새로 만들어요. name 인자를 주면 나중에 NameError#name 메서드로 그 이름을 꺼내볼 수 있어요. receiver 인자로는 에러가 발생한 문맥(맥락)의 객체를 넘길 수 있어요.
[1, 2, 3].method(:rject) # NameError with name "rject" and receiver: Array
[1, 2, 3].singleton_method(:rject) # NameError with name "rject" and receiver: [1, 2, 3]
Public Instance Methods
local_variables → array
이 NameError가 발생한 지점에 정의돼 있던 지역 변수 이름 목록을 돌려줘요. 내부용이에요(internal use only).
name → string or nil
이 NameError와 연관된 이름을 돌려줘요.
receiver → object
이 NameError와 연관된 리시버(수신자) 객체를 돌려줘요.