직접 발생한 Ruby Exceptions에 포함 된 메시지와 evals 내에서 제기 된 메시지 사이에는 이상한 차이가있는 것으로 보입니다. 예를 들어, 다음 코드Ruby : 평가 내에서 발생하는 예외에서 원하지 않는 컨텍스트
, I 번째 컨텍스트없이 예외를 발생시킬 수있는 방법을 알아 서브로 정규 표현식들을 사용의 짧은Rescue foo
Help!
Rescue eval 'foo'
./temp.rb:2:in `foo': Help!
있다 :
def foo
raise "Help!"
end
puts "\nRescue foo"
begin
foo
rescue RuntimeError => e
puts e.message
end
puts "\nRescue eval 'foo'"
begin
eval "foo"
rescue RuntimeError => e
puts e.message
end
는 다음 출력을 생성 케이스?
좋은 점이 모두 있습니다. –