класс LocalJumpError
Вызывается, когда Ruby не может выполнить запрос yield.
Типичный сценарий — это попытка выполнить yield, когда блок не задан:
def call_block yield 42 end call_block
вызывает исключение:
LocalJumpError: no block given (yield)
Более тонкий пример:
def get_me_a_return
Proc.new { return 42 }
end
get_me_a_return.call
вызывает исключение:
LocalJumpError: unexpected return
Общедоступные методы экземпляра
exit_value → obj Показать исходный код
static VALUE
localjump_xvalue(VALUE exc)
{
return rb_iv_get(exc, "@exit_value");
} Возвращает значение выхода, связанное с этим LocalJumpError.
reason → символ Показать исходный код
static VALUE
localjump_reason(VALUE exc)
{
return rb_iv_get(exc, "@reason");
} Причина завершения этого блока: :break, :redo, :retry, :next, :return или :noreason.
Ruby Core © 1993–2022 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.