메서드 매개 변수가 괄호로 묶인 것을 좋아합니다. 이것은 파스칼 향수입니다. 코드를 정리할 때 매개 변수가없는 메서드 매개 변수를 찾으면 즉시이를 묶습니다. 문서에 따라 구문이 정상적으로 보였지만 오늘 작업 코드에서 오류가 발생했습니다.루비 Kernel.raise 메서드는 매개 변수를 괄호로 묶을 때 오류가 발생합니다
(Object) raise(exception[, string [, array]])
이 모든 작업은 다음과 같습니다 :
> raise TypeError
TypeError: TypeError
> raise (TypeError)
TypeError: TypeError
> raise "Error message"
RuntimeError: Error message
> raise ("Error message")
RuntimeError: Error message
그러나 다음이 발생 구문 오류가 동봉 된 버전 :
> raise TypeError, "Error message"
TypeError: Error message
> raise (TypeError, "Error message")
SyntaxError: unexpected ')', expecting $end
I
Kernel.raise의 문서는이 형식은 그것을없이 살 수있다, 나는 단지 이것이 왜 오류로 끝나는 지 알고 싶다.