2014-01-15 11 views
0

Ruby 객체의 생성자가 주어진 인수의 개수에 대해 불만을 나타내지 않고 (잘못된 인수가 발생한 경우) 정확히 예상 한 것을 나열하는 메시지를 보내고 싶습니다.초기화 메소드에서 ArgumentError 메시지 사용자 정의

def initialize a, b, c 
    begin 
    @a = a 
    @b = b 
    @c = c 
    rescue ArgumentError 
    raise ArgumentError, "my custom error message" 
    end 
end 

분명히이 방법은 효과가 없지만 잘하면이 아이디어를 얻게됩니다. 이 클래스의 기본 ArgumentError 메시지를 재정의하려고합니다.

답변

3
def initialze(*args) 
    raise ArgumentError, 'my message' unless valid_according_to_my_rules(args) 

    @a, @b, @c = args 
end