2012-05-22 3 views
0

Я использую ruby-debug, чтобы погрузиться в код, который бросает и молча употребляет исключения. (Код в камне, так что я ненавижу, чтобы редактировать его непосредственно без очень уважительной причине.)Проверка неявного Исключения при отладке внутри блока повышения

добраться до этой линии:

167  def catch_exceptions 
    168   begin 
    169   yield 
    170   rescue Exception 
=> 171   rollback 
    172   end 
    173  end 
    174 

В строке 170 не определяется как rescue Exception => e , объект исключения не объявлен.

Есть ли способ проверить этот «неявный» объект исключения?

ответ

3

Вы можете получить доступ к последнему исключению, используя глобальную переменную $!.

Я знаю, что у вас не всегда есть выбор, но подумайте об исправлении драгоценного камня или использовании другого. Этот подход «все-таки» очень плох, когда дело доходит до отслеживания исключений.

Смежные вопросы