Согласно моей копии Программирование на Ruby 1.9 ,
Предложение спасения без параметра обрабатывается так, как если бы оно имело параметр StandardError
.
А вот документация ruby-doc.org :
По умолчанию rescue
только перехватывает StandardError
и его потомков, но вы можете указать, какие исключения вы хотите обработать, в качестве аргументов. (Этот метод не работает, когда rescue
находится в позиции модификатора оператора.)
В разделе «Почему нет» имеется иерархия исключений , если вам нужно сослаться на нее.
В качестве краткого справочника классами исключений, которые не являются производными от StandardError
, являются:
fatal
NoMemoryError
ScriptError
SignalException
SystemExit
SystemStackError