Raised when Ruby can’t yield as requested.
A typical scenario is attempting to yield when no block is given:
def call_block
yield 42
end
call_block
raises the exception:
LocalJumpError: no block given (yield)
A more subtle example:
def get_me_a_return
Proc.new { return 42 }
end
get_me_a_return.call
raises the exception:
LocalJumpError: unexpected return
Methods
- E
-
- R
-
Instance Public methods
local_jump_error.exit_value → obj
Link
Returns the exit value associated with this LocalJumpError
.
Source:
show
static VALUE
localjump_xvalue(VALUE exc)
{
return rb_iv_get(exc, "@exit_value");
}
local_jump_error.reason → symbol
Link
The reason this block was terminated: :break, :redo, :retry, :next, :return, or :noreason.
Source:
show
static VALUE
localjump_reason(VALUE exc)
{
return rb_iv_get(exc, "@reason");
}